摘要: es6之前,社区模块加载方案,主要是CommonJS(用于服务器)和AMD(用于浏览器) 而es6实现的模块解决方案完全可以替代CommonJS和AMD ES6模块设计思想:尽量静态化,在编译时就能确定模块的依赖关系,以及输入输出的变量 而CommonJS和AMD模块,都只能在运行时确定这些东西 同 阅读全文
posted @ 2017-12-21 17:54 why_not_try 阅读(827) 评论(0) 推荐(0) 编辑
摘要: ES5中,生成对象通过构造函数: 1 function A(name,age){ 2 this.name=name; 3 this.age=age 4 } 5 // 在A的prototype属性上定义一个test方法,即A生成的实例化对象的原型对象上的方法 6 A.prototype.test=fu 阅读全文
posted @ 2017-12-21 17:33 why_not_try 阅读(4543) 评论(0) 推荐(1) 编辑
摘要: 1.Symbol: Symbol中文意思“象征” Symbol:这是一种新的原始类型的值,表示独一无二的值(可以保证不与其它属性名冲突) Symbol()函数前面不能使用new,因为生成的Symbol(下面指s)是一个原始类型的值,不是对象 1 let s=Symbol() 2 console.lo 阅读全文
posted @ 2017-12-21 17:26 why_not_try 阅读(317) 评论(0) 推荐(0) 编辑
摘要: 1.函数可以设置参数默认值 2.rest参数:形式为...变量名 注意:如果有rest参数,那么它一定是最后一个参数 功能形如 “rest参数的逆运算”: 3.箭头函数(=>) 例一: 例二: 例三: 注意:大括号被解释成代码块,所以返回对象时要加上圆括号,否则报错 如果函数代码块内有多条语句,用上 阅读全文
posted @ 2017-12-21 17:13 why_not_try 阅读(1900) 评论(0) 推荐(0) 编辑
摘要: ES中允许按照一定格式从数组,对象值提取值,对变量进行赋值,这就是解构(Destructuring) 1 let [a,b,c]=[1,10,100] 2 console.log(a,b,c)//1 10 100 3 //等式两边"模式"进行匹配,从而进行赋值 4 let [i,[[[j]],k]] 阅读全文
posted @ 2017-12-21 16:27 why_not_try 阅读(262) 评论(0) 推荐(0) 编辑
摘要: es是js的规范,而js是具体实现 将es6转化为es5代码工具:运用的多的是babel 在线转换地址:babel,traceur(属于谷歌) 1.let申明变量:let其实可以完全取代var,并且没有var这么多副作用 1 { 2 var a = 10; 3 let b = 10;//let申明的 阅读全文
posted @ 2017-12-21 16:15 why_not_try 阅读(272) 评论(0) 推荐(0) 编辑