ES5和ES6之间的区别?

栏目: JavaScript · 发布时间: 5年前

内容简介:ECMAScript 5(ES5):ECMAScript的第5版,于2009年标准化。该标准已在所有现代浏览器中完全实现ECMAScript 6(ES6)/ ECMAScript 2015(ES2015):第6版ECMAScript,于2015年标准化。该标准已在大多数现代浏览器中部分实施。以下是ES5和ES6之间的一些主要区别:

ECMAScript 5(ES5):ECMAScript的第5版,于2009年标准化。该标准已在所有现代浏览器中完全实现

ECMAScript 6(ES6)/ ECMAScript 2015(ES2015):第6版ECMAScript,于2015年标准化。该标准已在大多数现代浏览器中部分实施。

以下是ES5和ES6之间的一些主要区别:

1.箭头函数和字符串插值:

const greetings = (name) => {
      return `hello ${name}`;
}

或:

const greetings = name => `hello ${name}`;

2.  Const在许多方面像其他语言中的常量一样工作,但有一些警告。Const表示对值的“恒定引用”。因此,使用const,您可以改变变量引用的对象的属性,你无法改变引用本身。

const NAMES = [];
NAMES.push("Jim");
console.log(NAMES.length === 1); // true
NAMES = ["Steve", "John"]; // error

3. 块范围变量。新的ES6关键字let允许开发人员在块级别定义变量。

4. 默认参数值 默认参数允许我们使用默认值初始化函数。如果省略或未定义参数,则使用默认值 - 表示null是有效值。

// Basic syntax
function multiply (a, b = 2) {
     return a * b;
}
multiply(5); // 10

5. 类定义和继承:ES6引入了对类(class关键字),构造函数(constructor关键字)和extend继承关键字的语言支持。

6. for-of运算符:

for ... of语句创建一个循环遍历可迭代对象的循环。

7. Spread Operator对象合并

const obj1 = { a: 1, b: 2 }
const obj2 = { a: 2, c: 3, d: 4}
const obj3 = {...obj1, ...obj2}

8. Promises提供了一种处理异步操作的结果和错误的机制。你可以用回调来完成同样的事情,但是promises通过方法链接和简洁的错误处理提供了更高的可读性。

const isGreater = (a, b) => {
  return new Promise ((resolve, reject) => {
    if(a > b) {
      resolve(true)
    } else {
      reject(false)
    }
    })
}
isGreater(1, 2)
  .then(result => {
    console.log('greater')
  })
 .catch(result => {
    console.log('smaller')
 })

9. 模块导出和导入

看看模块导出:

const myModule = { x: 1, y: () => { console.log('This is ES5') }}
export default myModule;

模块导入:

import myModule from './myModule';

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Node.js实战

Node.js实战

[美] Mike Cantelon、[美] TJ Holowaychuk、[美] Nathan Rajlich / 吴海星 / 人民邮电出版社 / 2014-5 / 69.00元

服务器端JavaScript?没错。Node.js是一个JavaScript服务器,支持可伸缩的高性能Web应用。借助异步I/O,这个服务器可以同时做很多事情,能满足聊天、游戏和实时统计等应用的需求。并且既然是JavaScript,那你就可以全栈使用一种语言。 本书向读者展示了如何构建产品级应用,对关键概念的介绍清晰明了,贴近实际的例子,涵盖从安装到部署的各个环节,是一部讲解与实践并重的优秀......一起来看看 《Node.js实战》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具