摘要:作用范圍這樣都會應用上模式。如果你僅想在一個函數中使用的特性檢查對象中的重復鍵這段代碼會拋出一個錯誤因為出現了兩次。未聲明變量在模式下,給未聲明的變量賦值會拋出的警告。重復的參數注意出現了兩次,因此會拋出一個錯誤。
"use strict"作用范圍
// file.js "use strict" function doStuff(){ // use strict is enabled here! }
這樣file.js都會應用上"use strict"模式。
如果你僅想在一個函數中使用:
// file.js
function a(){
"use strict"; // use strict is enabled in this context function nestedFunction(){ // and here too }
}
"use strict"的特性 檢查對象中的重復鍵var zombie = { eyeLeft : 0, eyeRight: 1, // ... a lot of keys ... eyeLeft : 1 }
這段代碼會拋出一個錯誤因為 eyeLeft 出現了兩次。這比你用眼睛去找錯誤要快多了。
未聲明變量在"use strict"模式下,給未聲明的變量賦值會拋出ReferenceError的警告。而在正常模式下,給未聲明變量賦值會直接創建同名全局變量。
重復的參數function run(fromWhom, fromWhom){}
注意fromWho出現了兩次,因此會拋出一個錯誤。
限制函數中的argumentsvar run = function(fromWhom){ arguments[0] = "alien"; alert(fromWhom); } run("zombie"); // alert: "alien"; var run = function(fromWhom){ "use strict"; arguments[0] = "alien"; alert(fromWhom); } run("zombie"); // alert: "zombie";
看懂了么,就是這么簡單
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/107720.html
摘要:增強的安全措施禁止關鍵字指向全局對象使用構造函數時,如果忘了加,不再指向全局對象,而是報錯。禁止八進制表示法整數第一位為,將報錯。也就是說,不允許在非函數的代碼塊內聲明函數。 use strict 全局變量顯示聲明 靜態綁定:屬性和方法到底歸屬哪個對象,在編譯階段就確定。 禁止使用with語句:因為with語句無法在編譯時就確定屬性到底歸屬哪個對象 創設eval作用域:正常模式下...
摘要:獲得當前元素相對于的位置。返回一個對象含有和當給定一個含有和屬性對象時,使用這些值來對集合中每一個元素進行相對于的定位。獲取對象集合中第一個元素相對于其的位置。結尾以上就是中與偏移相關的幾個的解析,歡迎指出其中的問題和有錯誤的地方。 前言 這篇文章主要想說一下Zepto中與偏移相關的一些事,很久很久以前,我們經常會使用offset、position、scrollTop、scrollLe...
摘要:未聲明變量你現在已經知道忘記在這個變量前面加了。想象一下,如果你聲明了一個全局的,在嵌套循環中可能會引起混亂。重復的參數注意出現了兩次,因此會拋出一個錯誤。限制函數中的現在你可以使用改變了參數,又節約了你的時間。 // file.js use strict function doStuff(){ // use strict is enabled here! } 這樣挑的fil...
嚴格模式 首先來了解一下嚴格模式是什么?嚴格模式是JavaScript中的一種限制性更強的變種方式,不是一個子集:它在語義上與正常代碼有明顯的差異,不支持嚴格模式的瀏覽器與支持嚴格模式的瀏覽器行為上也不一樣,所以不要在未經嚴格模式特性測試情況下使用嚴格模式,嚴格模式可以與非嚴格模式共存,所以腳本可以逐漸的選擇性加入嚴格模式 嚴格模式的目的 首先,嚴格模式會將JavaScript陷阱直接變成明顯的錯...
閱讀 1083·2021-09-22 15:19
閱讀 1697·2021-08-23 09:46
閱讀 2226·2021-08-09 13:47
閱讀 1405·2019-08-30 15:55
閱讀 1408·2019-08-30 15:55
閱讀 1974·2019-08-30 15:54
閱讀 2795·2019-08-30 15:53
閱讀 713·2019-08-30 11:03