
es6详解
文章平均质量分 60
lihongxun945
膜拜大牛
展开
-
ES6详解一:复习ES5 新增内容
ES5 新增内容ES6 最近炒得火热,准备写一下ES6规范的主要内容。在这之前先复习一下ES5相关的内容。ES5 总体来说改动很少,最重要的是如下几个改动:use strict可以在函数定义的第一行通过一个字符串语法把这个函数声明为 严格模式function() { “use strict”; }在严格模式下,会有如下一些限制:未声明的变量赋值直接报错,而不是变成全局变量函数默认的 this原创 2015-07-14 09:47:00 · 6461 阅读 · 0 评论 -
ES6详解四: WeakMap
Map 和 Set 就不说了,很常规的概念,不过Map和Object有点区别的,比如Map可以用一个object作为key。这里重点说一下WeakMap。 WeakMap和Map主要有如下几个区别:1. WeakMap 只能用Object作为key,不能用基本数据类型比如字符串作为key2. WeakMap 中的key是弱引用3. WeakMap 没有size原创 2015-09-17 22:19:33 · 8768 阅读 · 0 评论 -
ES6 详解二: 新增内容概览
ES6 新增内容概览相比对ES5 不痛不痒的几个改动,ES6新增了大量的内容。这里先简单罗列一下,后续会一个一个仔细解释。打开ES6支持chrome 已经支持了很多es6的特性,不过被关闭了,你可以在这里打开 chrome://flags/#enable-javascript-harmony。改完之后记得重启浏览器生效。这可以查看主流浏览器和自己当前浏览器的兼容性 https://kangax.gi原创 2015-07-15 20:50:56 · 6829 阅读 · 0 评论 -
ES6详解六:赋值语法糖 destructing & spread
destructing这个不知道怎么翻译就不翻译了,意思就是可以通过析构表达式的右边值来同时对左边的多个值进行赋值。说起来有点绕,举几个简单的例子就可以理解:var [a,b,c]=[1,2,3]; //通过数组给多个变量赋值 var {name, age} = {name: “Tom”, age:12} //通过一个对象来给多个变量赋值上面两个例子分别用一个数组和一个对象对多个变量进行赋值原创 2015-10-06 20:45:57 · 9014 阅读 · 2 评论 -
ES6详解三:class
class是es6引入的最重要特性之一。在没有class之前,我们只能通过原型链来模拟类。基本用法如果你用过java这样的纯面向对象语言,那么你会对class的语法非常熟悉。class People { constructor(name) { //构造函数 this.name = name; } sayName() { console.原创 2015-09-17 21:19:59 · 36543 阅读 · 3 评论 -
ES6详解五:Symbol
为什么要SymbolSymbol的目的就是为了实现一个唯一不重复不可变的值,任何一个Symbol都是唯一的,不会和其他任何Symbol相等。很多时候其实我们都需要用到唯一不重复的值。比如我们给一个DOM节点做动画,那么我们需要判断动画是否正在执行。这个时候一般的做法是给DOM节点加上一个属性(或者classname之类的)做一个标记,比如下面这样:d.isMoving = true; //正在执行原创 2015-09-18 21:43:00 · 4530 阅读 · 1 评论 -
ES6详解八:模块(Module)!
modules是ES6引入的最重要一个特性。 所以以后再写模块,直接按照ES6的modules语法来写,然后用 babel + browserify 来打包就行了。modules规范分两部分,一部分是如何导出,一部分是如何导入。基本用法命名导出(named exports)可以直接在任何变量或者函数前面加上一个 export 关键字,就可以将它导出。 这种写法非常简洁,和平时几乎没有区别,唯一的原创 2015-10-10 22:31:28 · 58155 阅读 · 5 评论 -
ES6详解七:循环的秘密 - iterator 和 yield
如果学过设计模式或者java之类的肯定知道 iterator 是什么,在 Symbol.iterator 出现后,JS中也可以自己定义一个迭代器。 只要一个对象实现了正确的 Symbol.iterator 方法,那么它就可以被 for in 所遍历,如下所示:var students = {}students[Symbol.iterator] = function() { let index原创 2015-10-07 19:46:45 · 12568 阅读 · 1 评论