读书笔记:深入理解ES6 (附录B)

原创
2019/10/22 14:54
阅读数 56

附录B:了解ES7(2016)

  ES6经历了4年的发展,之后TC-39决定将发布周期转换为每年一版,以确保新语言特性能够更快地发展。

  ES6中添加了三个语法特性,下面一一来讲。

 

第1节 指数运算符

  1. 在之前的时候,可以通过 Math.pow() 方法来执行求幂运算,但这毕竟是一个方法,一些开发者更希望通过操作符就可以实现这个功能。所以在ES6中,使用了两个星号 “**”,来作为求幂运算符。其中:左操作数是基数,右操作数是指数。例如,

1 let result = 5 ** 2;
2 
3 console.log(result); // 25
4 console.log(result === Math.pow(5, 2));

 

  2. 求幂运算符在JavaScript所有二进制运算符中具有最高的优先级(一元运算符的优先级高于 **)。例如,

1 let result = 2 * 5 ** 2;
2 console.log(result); // 50

 

第2节 Array.prototype.includes()方法

  1. 该方法接受两个参数:要搜索的值及开始搜索的索引位置,第二个参数可选。例如,

复制代码
1 let values = [1, 2, 3];
2 
3 console.log(values.includes(1)); // true
4 console.log(values.includes(0)); // false
5 
6 // start the search from index 2
7 console.log(values.includes(1, 2)); // false
复制代码

 

  2. 注意,该方法和Object.is()方法有所不同。+0、-0在该方法中被认为是相同的,在Object.is()方法中被认为是不同的。

 

第3节 函数作用域严格模式的一处改动

  函数中存在“use strict”时,实现运行在严格模式下的参数非常困难,因为参数默认值也可以是函数。这个难点导致大多数JavaScript引擎均不实现此功能,而是将其等同于全局对象。

  由于实现困难,ES2016规定在参数被解构或有默认参数的函数中,禁止使用 “use strict”指令。只有参数为不包含解构或默认值的简单参数列表时,才可以在函数体中使用 “use strict”。例如,

复制代码
 1 //此处使用简单参数列表,可以运行
 2 function okay(first, second)
 3 {
 4     "use strict";
 5     return first;
 6 }
 7 
 8 //抛出语法错误
 9 function notOkay1(first, second=first)
10 {
11     "use strict";
12     return first;
13 }
14 
15 //抛出语法错误
16 function notOkay2({ first, second })
17 {
18     "use strict";
19     return first;
20 }
复制代码

 

后记:该书一共十三章,加上后面两篇附录,也就是十五章的篇幅。从8.29号开始看,到现在整理完笔记,一共18天的时间。这半个多月的时间在持续地看书,做笔记,发布到博客,中间陆陆续续经历了一些想要放弃的念头,还是硬着头皮坚持下来了,这一刻,有一点 小小的激动,有一点小小的佩服自己。下面说一下自己在这一期间的一些感受、思考或者说收获吧,与大家分享。

 

   对于学习技术来说,现在获取信息的渠道越来越多。例如:培训机构、看书、视频、专栏、博客、微博,甚至公众号等,越来越多的渠道可以供我们选择。那么在这么烟花缭乱的情况下,我们应该如何选择适合自己的获取信息渠道呢?

 

   在我看来,这些渠道各有自己的优点,也有自己的缺点。下面一一来说一下自己的思考:

  1. 培训机构,有学习的氛围,但是学费、交通成本都比较大;

  2. 看书,相对系统,且有出版社为读者把关,图书内容质量有保证。缺点,可能更新速度比较慢。

  3. 视频,讲的细,有新的知识可以及时更新课程;但可能讲的比较慢,有的时候也不够系统。例如,在一些视频网站上学习某个语言的时候,发现它讲的只是整个知识体系中的一部分,你学完了视频,但是感觉掌握的还是不够系统,也就是说知识的完备性不够好。

  4. 专栏,一般属于提纲挈领式的,有深度,但是往往细节上可能稍微欠缺一些,这也是由它的篇幅决定的,但是好处就是可以随时随地在手机上看,比较方便。

  5. 博客、微博和公众号呢,好处是比较适合碎片化的时间去马上阅读一篇,欠缺的部分其实刚才也说过,一个是知识点的获取不够系统,另一个是它和出书不一样,可能内容的权威性需要读者有自己的思辨能力和判断能力。

 

  综上,这些渠道可以综合起来使用,使用它的优势部分,而对于它欠缺的地方,可能其他渠道可以做个弥补。所以,我们要灵活掌握和运用这些渠道,让自己的技术能力一步一步提升上去。同时还可以考虑增加和拓宽自己的知识面,不拘泥和局限于技术,以使我们的路越走越宽。

 

(全书完)

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部