這篇文章給大家分享的是有關在javascript中使用嚴格模式的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)是專業(yè)的修文網(wǎng)站建設公司,修文接單;提供網(wǎng)站制作、成都網(wǎng)站制作,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行修文網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
嚴格模式是什么意思?有什么用?
嚴格模式是ECMAScript 5中的一項新功能,它允許我們將程序或函數(shù)置于“嚴格”操作上下文中。這種嚴格的上下文可以防止某些操作被采取并引發(fā)更多異常。
我們需要聲明“use strict”; 指示瀏覽器使用嚴格模式,這是一種簡化且更安全的JavaScript功能集。
使用嚴格模式的好處:對普通的JavaScript語義進行了一些改變。
1、嚴格模式通過將其更改為拋出錯誤來消除一些JavaScript無提示錯誤。
2、嚴格模式修復了使JavaScript引擎難以執(zhí)行優(yōu)化的錯誤:嚴格模式代碼有時可以比非嚴格模式的相同代碼運行得更快。
3、嚴格模式禁止在ECMAScript的未來版本中定義某些語法。
4、當采取相對“不安全”的操作(例如獲取對全局對象的訪問權限)時,它會阻止或拋出錯誤。
5、它會禁用令人困惑或經(jīng)過深思熟慮的功能。
6、嚴格模式可以更輕松地編寫“安全”JavaScript代碼。
如何使用嚴格模式?
嚴格模式可以用兩種方式來使用 :可以在整個腳本的全局范圍中使用,也可以應用于單個函數(shù)。
注:嚴格模式不適用于{}括號中的塊語句。
在整個腳本的全局范圍中使用
調用嚴格模式,請在任何其他陳述之前輸入確切的語句“use strict”; (或'use strict';)。
//全腳本嚴格模式語法 "use strict"; var v ="嚴格模式腳本!";
注意:此語法有一個流程:無法盲目連接非沖突腳本。考慮將嚴格模式腳本與非嚴格模式腳本連接起來:整個連接看起來很嚴格!反之亦然:非嚴格加嚴格,會看起來非嚴格。嚴格模式腳本相互連接很好,并且非嚴格模式腳本的連接很好。只連接嚴格和非嚴格的腳本是有問題的。因此,建議您逐個功能地啟用嚴格模式(至少在過渡期間)。
使用函數(shù)調用嚴格模式
要在函數(shù)中調用嚴格模式,同樣請在任何其他語句之前在函數(shù)體中將確切的語句設置為“use strict”; (或'use strict';)。
function strict(){
//功能級嚴格模式語法
"use strict";
function nested(){
return '在Javascript中';
}
return "嚴格模式函數(shù)!"+ nested();
}
function notStrict(){
return "非嚴格模式";
}使用嚴格模式的示例:
1、在普通的JavaScript中,錯誤輸入變量名稱會創(chuàng)建一個新的全局變量。在嚴格模式下,這將引發(fā)錯誤,從而無法意外創(chuàng)建全局變量
2、使用嚴格模式,不允許在不聲明變量的情況下使用變量
//不允許使用變量而不聲明它: "use strict"; x = 3.14; //這會導致錯誤
3、對象也是變量。使用嚴格模式,不允許使用對象而不聲明它:
//不允許使用對象而不聲明它:
"use strict"
x = {p1:10,p2:20}; //這會導致錯誤4、不允許刪除變量(或對象)和函數(shù),也不允許刪除功能
"use strict";
//不允許刪除變量(或對象)和函數(shù)
var x = 3.14;
delete x; //這會導致錯誤
//也不允許刪除功能
function x(p1,p2){};
delete x; //這會導致錯誤5、不允許復制參數(shù)名稱
“嚴格使用”;
函數(shù)x(p1,p1){}; //這會導致錯誤6、不允許使用八進制數(shù)字文字
"use strict"; var x = 010; //這會導致錯誤
7、不允許使用轉義字符
"use strict"; var x = \ 010; //這會導致錯誤
8、不允許寫入只讀屬性
"use strict";
var obj = {};
Object.defineProperty(obj,“x”,{
value:0,writable:false
});
obj.x = 3.14; //這會導致錯誤9、不允許寫入get-only屬性
"use strict";
var obj = {
get x(){return 0}
};
obj.x = 3.14; //這會導致錯誤10、不允許刪除不可刪除的屬性
"use strict"; delete Object.prototype; //這會導致錯誤
11、字符串“eval”不能用作變量
"use strict"; var eval = 3.14; //這會導致錯誤
12、字符串“arguments”不能用作變量
"use strict"; var arguments = 3.14; //這會導致錯誤
13、不允許使用with語句
"use strict";
with(Math){
x = cos(2)
}; //這會導致錯誤14、出于安全原因,不允許eval()在調用它的范圍內創(chuàng)建變量
"use strict"; eval(“var x = 2”); alert(x); //這會導致錯誤
感謝各位的閱讀!關于在javascript中使用嚴格模式的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
網(wǎng)站題目:在javascript中使用嚴格模式的方法
路徑分享:http://www.chinadenli.net/article48/piigep.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、品牌網(wǎng)站建設、企業(yè)建站、營銷型網(wǎng)站建設、標簽優(yōu)化、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)