JavaScript和angularJs文法支援strict 模式:”use strict”

來源:互聯網
上載者:User

標籤:

 

如果給JavaScript和angularjs代碼標誌為“strict 模式”,則其中啟動並執行所有代碼都必然是strict 模式下的。
其一:如果在文法檢測時發現文法問題,則整個代碼塊失效,並導致一個文法異常。
其二:如果在運行期出現了違反strict 模式的代碼,則拋出執行異常。

註:經過測試IE6,7,8,9均不支援strict 模式。

JavaScript代碼“strict 模式”使用方法:
strict 模式需要使用字串序列:

 

"use strict"

 

在如下位置加入可以開啟相應代碼塊中的strict 模式:
1.必須在全域代碼的開始處加入。
2.在eval代碼開始處加入。
3.在函式宣告代碼開始處加入。
4.在new Function()所傳入的body參數區塊開始加入。

例1:

 

var num =012;alert(num);

 

在非strict 模式下,可以使用0(零)開頭首碼聲明8進位。顯示10。

但是在strict 模式下,會產生錯誤。

 

"use strict";

var num =012;

alert(num);

 

測試結果:
IE6,7,8,9均顯示10。
FF報錯:octal literals and octal escape sequences are deprecated
Chrome報錯:Uncaught SyntaxError: Octal literals are not allowed in strict mode.
Opera報錯:Syntax error at line 3 while loading: Invalid character var num = 012;

如果使用strict 模式,除了0(零)開頭首碼8進位以外還有:
1.在代碼中不能使用一些擴充的保留字:
implements,interface,let,package,private,public,static,yield
2.with語句也不能使用。
3.不能聲明或重寫eval和arguments兩個標識符。
4.不能用delete 刪除顯式聲明的標識符,名稱或具名函數。

JavaScript和angularJs文法支援strict 模式:”use strict”

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.