ES6入门笔记(一)
装置babel
因为浏览器对ES6的支撑还不是很好,编写ES6代码前我们要装置一个babel东西将ES6代码编译成ES5代码,用以下敕令装置babel:
npm install -g babel-core //装置babel中心库
npm install -g babel-cli //装置babel敕令行东西
装置胜利后,我们将a.js的ES6代码编译为b.js的ES5代码的敕令为:
babel a.js -o b.js
这里要注意因为babel最新版本另有对jsx,ES7等范例的支撑,所以还要在当前目次新建一个.babelrc文件来指定当前运用JS的候选版本,其内容为:
{
"presets": ["es2015"] //指定当前JS版本为es2015
}
区块作用域let与常量const
ES6里用let声明具有区块作用域的变量,什么是区块作用域,进修过C,C++,Java等言语的同砚都晓得,如轮回、if/else等、或用花括号代码块里声明的变量是具有作用域的,超越该局限即没法运用,js一向没有这个观点,ES6补上了这个缺口。
用const声明的常量没法在后面的代码中改值。
Spread表达式
ES6里另有一个很轻易的就是spread表达式,举个例子:
function cook(dessert, ...drink) {
let temp = dessert;
for (let i = 0; i < drink.length; ++i) {
temp += ',' + drink[i];
}
console.log(temp);
}
cook('cake', 'juice', 'cola');
// 运转效果为 cake,juice,cola
…后声明的drink里以数组的情势存放了函数的盈余参数,是否是很轻易。