ES5 嚴格模式
ES5 正常模式 嚴格模式
IE9及以下IE不支援嚴格模式
'use strict' 啟動嚴格模式 通常在自己的函式模組中啟動
var a = 1;
var obj = {
a: 2
}
function test(){
var a = 3;
with(window){ //嚴格模式下不許用with
console.log(a) //window輸出1 obj輸出2 test輸出1
}
}
嚴格模式下不可用caller和callee arguments的屬性可能不能用
嚴格模式下變數必須有宣告 var a=b=1 報錯
嚴格模式下引數不能重複 function test(a, a)
嚴格模式下obj = { a:1,a:2} console.log(obj.a)//輸出2
名稱空間
番外篇:ECMAScript 發展
ECMAScript
97 1.0
98 2.0
99 3.0 JS通行標準
07 4.0草案 Mozilla Branden Eich
08 4.0中止 容易改善3.1 Harmony
ECMAScript5
09 5.0釋出 Harmony ->1/2 JS.NEXT 1/2 JS.next.next
11 5.1 ISO國際標準
13 ES6 = js.next js.next.next 7
13 ES6草案發布
15 ES6正式釋出 ESMAScript2015