1. 理解:瀏覽器
* 除了正常運行模式(混雜模式),ES5添加了第二種運行模式:"嚴格模式"(strict mode)。安全
* 顧名思義,這種模式使得Javascript在更嚴格的語法條件下運行ide
2. 目的/做用函數
* 消除Javascript語法的一些不合理、不嚴謹之處,減小一些怪異行爲this
* 消除代碼運行的一些不安全之處,爲代碼的安全運行保駕護航spa
* 爲將來新版本的Javascript作好鋪墊code
3. 使用對象
* 在全局或函數的第一條語句定義爲: 'use strict';blog
* 若是瀏覽器不支持, 只解析爲一條簡單的語句, 沒有任何反作用ip
4. 語法和行爲改變
* 必須用var聲明變量
* 禁止自定義的函數中的this指向window
* 建立eval做用域
* 對象不能有重名的屬性
1 'use strict'; 2 var age = 12; 3 console.log(age); 4 //錯誤 neme = 10; 5 function Person(name, age) { 6 this.name = name; 7 this.age = age; 8 } 9 new Person('kobe', 39); 10 //錯誤寫法 Person('kobe', 39); this->wiondw; 11 setTimeout(function () { 12 console.log(this);//window 13 }, 1000); 14 15 //* 建立eval做用域 16 var name = 'kobe'; 17 eval('var name = "anverson";alert(name)'); 18 console.log(name); 19 20 var obj = { 21 name : 'kobe', 22 //一樣的屬性名會報錯 23 name : 'weide' 24 }; 25 console.log(obj);