摘要:一般我们都不关心 ECMA 规范,只需要学习怎么使用就好了。但有时候遇到一些难以解释的问题/现象,就不得不看一下规范是如何要求实现的了。规范内容庞杂,理解其中的术语有利于我们快速看懂规范。 Environment 环境指定了标识符在表达式中的意义。譬如当谈论表达式 x + 1 时,如果不指明 x 所 阅读全文
posted @ 2019-08-21 17:17 廖飞银 阅读 (3) 评论 (0) 编辑
摘要:如何创建测试是一件困难的事。网络上有许多关于测试的文章,却从来不告诉你他们是如何开始创建测试的。 所以,今天我将分享我在实际工作中是如何从头开始创建测试的。希望能够对你提供一些灵感。 目录: 使用 Express 创建一个应用 使用 Mongoose 链接 MongoDB 使用 Jest 作为测试框 阅读全文
posted @ 2019-08-14 17:32 廖飞银 阅读 (5) 评论 (0) 编辑
摘要:作为一个有一丢丢追求的程序猿,需要不断的学习新知识,以扩展自身能力边界,这是好事。子曰:学而不思则罔,思而不学则殆。夫子的话时常萦绕耳畔,提醒我要学思结合,否则枉费精力。然而最近的一件事引发了我对学习的重新思考。 事件的简单回顾 相信很多前端都了解 JS 的事件循环(macrotask、microt 阅读全文
posted @ 2019-08-09 16:49 廖飞银 阅读 (5) 评论 (0) 编辑
摘要:你可能对使用数组的 join 方法已经轻车熟路,但你也许不知道: 10.If element0 is undefined or null, let R be the empty String; otherwise, let R be ToString(element0). https://www.e 阅读全文
posted @ 2019-07-11 15:14 廖飞银 阅读 (15) 评论 (0) 编辑
摘要:背景 我们的项目通过重写 对象上的方法实现日志上报的功能,截取代码片段如下: 然而在极少部分手机(iPhone 5s 9.3.1)中,在页面上使用 打印内容,会导致页面渲染失败,也不会向后台发送任何内容。 fixed 经过排查,发现问题出现在 。由于我们重写了 对象上的方法,导致执行 等方法时,丢失 阅读全文
posted @ 2019-07-01 15:54 廖飞银 阅读 (16) 评论 (0) 编辑
摘要:背景 在编写 .vue 组件时,可以将状态外置来获取一些额外的好处,譬如有这么一个组件(global components.vue): 将组件的状态外置,即 store.js 如下: 组件状态外置有两个好处: 单独的 js 文件,可以享受编辑器的代码提示功能 可以在任意地方,引入 store.js 阅读全文
posted @ 2019-06-25 10:55 廖飞银 阅读 (24) 评论 (0) 编辑
摘要:判断“this 指向谁”是个老大难的问题。 网络上有许多文章教我们如何判别,但大多艰涩复杂,难以理解。 那么这里介绍一个非常简单实用的判别规则: 1)在函数【调用】时,“this”总是指向小数点左侧的那个对象 2)如果没有小数点,那么“this”指向全局作用域(比如 Window,严格模式为 und 阅读全文
posted @ 2019-06-18 11:40 廖飞银 阅读 (61) 评论 (0) 编辑
摘要:关于微信小程序授权登录的最佳实践,我觉得最重要的一点是:在满足需求的情况下, 不侵入业务逻辑 。 "源码详见/src/request/" 所以,首先需要搞清楚有哪些需求。(注:本文只针对小程序原生框架) 对于大部分应用,并不是所有页面/接口都需要登录才可访问,这就要求登录功能需要实现:仅在需要登录的 阅读全文
posted @ 2019-05-15 17:47 廖飞银 阅读 (81) 评论 (0) 编辑
摘要:面试神器之数组去重 操作数组担心 falsy 值? 生成一个真正的空对象 合并对象 要求函数参数必传 const isRequired = () = { throw new Error('param is required'); }; const hello = (name = isRequired 阅读全文
posted @ 2019-05-05 11:15 廖飞银 阅读 (70) 评论 (0) 编辑
摘要:我对于 JavaScript 的内存模型一直都比较困惑,很想了解在操作变量的时候,JS 是如何工作的。如果你和我有同样的困惑,希望这篇文章能给你一些启发。 译文,喜欢原文的可以直接拉到底部 当我们声明变量、初始化变量、更改变量值的时候,到底会发生什么?JavaScript 是如何实现这些基本的功能? 阅读全文
posted @ 2019-04-24 17:32 廖飞银 阅读 (96) 评论 (0) 编辑