ES5与JavaScript中的ES6。 14bigð±更改
#javascript #网络开发人员 #编程 #career

es5和es6是指ecmascript标准的不同版本,即脚本语言规范,是包括JavaScript在内的几种语言的基础。从ES5到ES6的演变(也称为Ecmascript 2015)带来了许多变化和改进。这是两者之间的比较:

1. Let and Const(可变声明)

  • es5 :声明变量的主要方法是使用var
  • es6 :引入了块scoped变量声明的let,而const则用于块scop的常数变量声明。

2. 模板文字

  • es5 :使用+串联字符串。
  var name = "John";
  var greeting = "Hello, " + name + "!";
  • es6 :引入模板文字。
  let name = "John";
  let greeting = `Hello, ${name}!`;

3. 箭头功能

  • ES5
  function(x) {
      return x * x;
  }
  • es6 :引入了箭头功能,该功能为编写功能提供了较短的语法。
  x => x * x;

4. 课程

  • ES5 :原型遗传用于模拟类似类的行为。
  • ES6 :引入了针对对象的编程的class关键字。

5. 增强的对象文字

  • es5 :用键值对定义对象。
  • es6 :提供用于定义对象的较短语法。
  let name = "John";
  let obj = {name}; // Equivalent to {name: name}

6. 破坏

  • ES5 :没有直接的方式。
  • es6 :允许以更简洁的方式从对象或数组中提取多个属性。
  let person = { firstName: "John", lastName: "Doe" };
  let { firstName, lastName } = person;

7. 默认 +休息 + spread

  • es5 :手动完成默认,休息或传播。
  • es6 :引入函数参数的默认值,用于收集参数的...rest参数以及用于传播数组或对象的...spread运算符。

8. 模块

  • ES5 :没有天然模块系统。开发人员依靠第三方解决方案(例如COOMJS或AMD。
  • es6 :使用importexport引入本机模块系统。

9. 承诺

  • ES5 :回调用于异步操作。
  • es6 :以更结构化的方式介绍了处理异步操作的承诺。

10. 循环

  • es5 :使用forforEach进行循环。
  • es6 :引入了for-of循环,以迭代迭代物体。

11. 集,地图,弱点,弱图

  • ES5 :没有直接等效。
  • es6 :引入了这些收集类型用于处理数据。

12. 符号类型

  • es5 :没有这样的类型。
  • es6 :引入了用于创建唯一标识符的Symbol类型。

13. 数组和对象方法

  • ES5 :有限的方法集。
  • es6 :引入了诸如Array.fromArray.ofObject.assign等新方法。

14. 参数处理

  • es5 :使用arguments对象访问参数。
  • ES6 :直接支持对使用休息,默认和差异来处理参数。

这是一个高级比较。从ES5到ES6的过渡带来了许多其他详细的更改和改进,从而大大增强了JavaScript语言。随着时间的流逝,随后的版本(例如ES7/ES2016及以后)添加了更多功能。

感谢您的阅读。我鼓励您在Twitter上关注我,我定期分享有关JavaScript和反应的内容,并为开源项目做出贡献。我目前正在寻找远程工作或实习。

Twitter:https://twitter.com/Diwakar_766

github:https://github.com/DIWAKARKASHYAP

投资组合:https://diwakar-portfolio.vercel.app/