一道面试题引发的思考 --- Event Loop

2018-12-21
阅读 2 分钟
2k
想必面试题刷的多的同学对下面这道题目不陌生,能够立即回答出输出10个10,可是你真的懂为什么吗?为什么是输出10?为什么是输出10个10?这两个问题在我脑边萦绕。嗯,我得说服自己。

一道面试题引发的思考 --- 理解 new 运算符

2018-12-20
阅读 3 分钟
1.1k
说实话,第一反应我以为值为 'Tom',等到我把代码丢到控制台一输出,才明白我错了。天呐,new运算符给无视掉了吗???撇开 new 的存在,我们修改下代码

各类型的 toString 方法合集

2018-12-11
阅读 2 分钟
2.6k
Array,Boolean,RegExp,String,Number,Function,Date这些都是覆盖了 Object 的 toString 方法

迭代是什么?

2018-11-23
阅读 2 分钟
3.4k
经常看到迭代这个词,那么归总下吧~ 什么是可迭代对象: 一个对象(或它的原型链上的某个对象)必须有一个名字是 Symbol.iterator的属性 String Array Map Set 是内置可迭代的对象,因为它们的原型对象都有一个 @@iterator 方法 Object 不是 接收可迭代对象的API 数组的遍历 会调用迭代器接口,所以使用到数组作为参数的...

关于箭头函数的思考

2018-11-22
阅读 2 分钟
3.6k
而 console.log()方法返回 undefinedreturn undefined 与没有返回值一样。所以效果上问题中两种写法没有差异。

业务代码如何判断生产/开发环境

2018-08-29
阅读 2 分钟
9.2k
在开发时,会产生 debug 或者是测试的代码,这些代码不应该出现在生产环境中。当项目部署时,往往会将代码进行一系列的压缩来优化它,如此会彻底破坏代码的可读性。本地开发往往使用的是本地 mock 的数据,而正是上线后用的是真实数据。以上几点,开发环境和生产环境必须得分离。

浏览器原生支持ECMAScript模块,本地测试报CORS policy跨域错误

2018-08-22
阅读 1 分钟
2.9k
浏览器已经原生支持ES模块,我阅读着底部参考链接的两篇文章,本地测试 打开 html 文件,没有显示预期的内容,打开控制台,报错如下: 这是为什么? 不像常规的脚本加载,直接跨域可以解析,module模式下脚本资源加载需要 CORS 方式获取,不然浏览器报CORS policy跨域相关错误 如何支持跨域?需要模块资源服务端配置 Acce...

属性的可枚举性与不可枚举性

2018-05-06
阅读 2 分钟
7.2k
基本类型是指非对象且无方法的数据。JavaScript有6种基本类型:string,number,boolean,null,undefined,symbol除了null和undefined外,所有基本类型值都有包裹这个基本类型值的等价对象:String Boolean Number SymbolJavaScript有7种不同类型的值