美文网首页
ECMAScript 6 知识总结(一、ES6与ES5对比)

ECMAScript 6 知识总结(一、ES6与ES5对比)

作者: terence_yu | 来源:发表于2017-05-28 15:36 被阅读0次

ECMAScript 6 知识总结

一、ES6改良ES5的缺陷

  1. ES6新增块级作用域

    **在块级作用域内声明的变量不会被外层所引用,也就是说不需要ES5通过(函数)闭包来解决全局变量污染的问题. **

    • 防止变量在块级作用域外被访问.
    image
    • let/cont防止变量重声明.重复声明会报错.
    image
    • 不需要ES5闭包来解决变量污染的问题
    image
    • ES5中循环体的闭包会访问全局的 i ,而使用let 声明的循环体会将本次循环变量锁在块级作用域内!
    image

  2. 箭头函数代替词法作用域的"this"

    在ES5中,"this"会随着函数调用位置(全局/闭包),和函数调用方式(构造/普通)改变,ES6箭头函数中的"this"总是指向声明时的哪个对象

    1. 在下图中,我们希望打印一个用户的名字和薪水。假设我们从服务器异步获取薪水数据。注意到当服务器返回结果时,函数里的 “this” 是 “window” 而不是 “person”。 image

  3. 处理"arguments"

    在ES5中, arguments是一个伪数组,可以使用length来遍历他,但却不能使用完全Array的api(slice/sort).
    在ES6中,可以使用新特性叫做rest参数,他的形式为 ...参数名,比如...args,rest是一个真数组,所以至此Array所有api调用.

    1. image
      image
  4. **从概念上讲,在 ES6 之前的 JS 中并没有和其他面向对象语言那样的“类”的概念。长时间里,人们把使用 new 关键字调用的函数(也叫构造器)当做“类”来使用。 通过原型链混乱继承(不方便) **

    1. 对比ES5与ES6中实现类


      image
  5. 严格模式

    "use strice",在 ES5 中, 严格模式是可选项,但是在 ES6 中,许多特性要求必须使用严格模式。 因此大多数开发者和 babel 之类的工具默认添加 use strict 到 JS 文件的头部,以确保整个 JS 文件的代码都采用严格模式,这个习惯有助于我们写更好的 JavaScript.**

参考链接:https://75team.com/post/5-javascript-%E2%80%9Cbad%E2%80%9D-parts-that-are-fixed-in-es6.html

相关文章

  • ECMAScript 6 知识总结(一、ES6与ES5对比)

    ECMAScript 6 知识总结 一、ES6改良ES5的缺陷 ES6新增块级作用域**在块级作用域内声明的变量不...

  • ECMAScript 6(1)

    ECMAScript 6 ECMAScript 6也称为ES6和ECMAScript 2015 回顾es5 一:严...

  • ES6总结(一) 初识

    es6总结 往期文章 ES5总结 1.es6简介 回顾javascrip组成:核心(ECMAScript)由ECM...

  • ES6常见面试题总结

    1、es5和es6的区别,说一下你所知道的es6 ECMAScript5,即ES5,是ECMAScript的第五次...

  • 快速了解ES6

    一、es6简介 ECMAScript是一个标准 ECMAScript5.1es52011年发布 es6就是es5的...

  • JavaScript--ES5和ES6(上)

    一、概述 es表示ECMASCript ,他是从es3,es5,es6,es5是2009.12月发布的,es6是2...

  • 拓展2(ES6)

    一、ES5与ES6对比 var let const 1、ES5 声明局部变量必须使用一个立即执行函数,而ES6 使...

  • ES6常见面试问题汇总

    1、es5和es6的区别,说一下你所知道的es6ECMAScript5,即ES5,是ECMAScript的第五次修...

  • ES6常见题

    1、es5和es6的区别,说一下你所知道的es6ECMAScript5,即ES5,是ECMAScript的第五次修...

  • 变量的解构赋值

    es6的一些知识点,阅读ECMAScript 6 入门心得和总结 数组的解构赋值

网友评论

      本文标题:ECMAScript 6 知识总结(一、ES6与ES5对比)

      本文链接:https://www.haomeiwen.com/subject/whrhfxtx.html