
读书笔记
王依博
这个作者很懒,什么都没留下…
展开
-
ES6函数默认参数与解构赋值默认值结合使用
1.解构赋值默认值 let {x, y = 5} = {} // undefined 5 上式中变量没有对应的同名属性,导致取不到值,最后等于undefined 而y具有指定的默认值5,且根据默认值生效的条件:对象的属性值严格等于undefined 所以y等于默认值5 2.函数默认参数 function foo(x = 5, y = 2, z) { console.log(x,y,z) } foo(1) // 1 2 undefined 上面代码中,foo调用时只传了一个实参,所以第一原创 2021-12-03 17:28:49 · 329 阅读 · 0 评论 -
ES6块级作用域内声明函数
ES6引入了块级作用域,明确允许在块级作用域之中声明函数 块级作用域之中,函数声明语句的行为类似于let,在块级作用域之外不可引用 但实际上为了减轻因此产生的不兼容问题,ES6 在附录 B里面规定,浏览器的实现可以不遵守上面的规定,有自己的行为方式。 其规则为: 允许在块级作用域内声明函数。 函数声明类似于var,即会提升到全局作用域或函数作用域的头部。 同时,函数声明还会提升到所在的块级作用域的头部。 报错信息是个类型错误,f 不是函数类型 事实上,根据es6在作用域中声明函数...原创 2021-11-17 16:59:22 · 786 阅读 · 0 评论