關於ES6..
ECMAScript是 JavaScript 語言標準,ECMAScript 6 在 2015 年正式發布,因此簡寫為 ES6(或 ES2015)。
var, let, const
ES5 中使用var:為全域變量,在函數中如果沒有另外聲明就會變成global
ES6新增let與const
let:
- 只在代碼作用域中有效=>
{
..在作用域內}
- 在聲明之前都不可用
- 同個作用域不能重複聲明
const:不能改變的常量,聲明時就必須同時賦值,但const如果是物件,就可以改變內部的值
暫時性死區(temporal dead zone)
聲明變量代碼出現之前都無法獲取與使用
var | let | const |
x | O | O |
區塊作用域
使用{}
界定區塊
在區塊內才生效
var | let | const |
x | O | O |
重複聲明
var | let | const |
O | X | X |
修改變量
var | let | const |
O | O | X |
擴展運算符(...)
function f(a, b, ...theArgs) {
}
//以array形式回傳剩下的值
//字串轉array
[...'hello']
// [ "h", "e", "l", "l", "o" ]
ref:
https://es6.ruanyifeng.com/#docs/intro
Comments