ES5嚴格模式

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);
相關文章
相關標籤/搜索