JavaScript 严格模式
- Ƙarfin na gaba JS Hoisting
- Ƙarfin na gaba ƙanin JS this
"use strict";
定义 JavaScript 代码应该以“严格模式”执行。
"use strict" 指令
"use strict"
是 JavaScript 1.8.5 中的新指令(ECMAScript version 5)。
它不算一条语句,而是一段文字表达式,更早版本的 JavaScript 会忽略它。
"use strict";
的作用是指示 JavaScript 代码应该以“严格模式”执行。
在严格模式中,您无法,例如,使用未声明的变量。
以下版本的浏览器支持严格模式:
- 版本 10 以后的 IE
- 版本 4 以后的 Firefox
- 版本 13 以后的 Chrome
- 版本 5.1 以后的 Safari
- 版本 12 以后的 Opera
声明严格模式
通过在脚本或函数的开头添加 "use strict";
来声明严格模式。
在脚本开头进行声明,拥有全局作用域(脚本中的所有代码均以严格模式来执行):
实例
"use strict"; x = 3.14; // 这会引发错误,因为 x 尚未声明
实例
"use strict"; myFunction(); function myFunction() { y = 3.14; // 这会引发错误,因为 y 尚未声明 }
在函数中声明严格模式,拥有局部作用域(只有函数中的代码以严格模式执行):
x = 3.14; // 这不会引发错误 myFunction(); function myFunction() { "use strict"; y = 3.14; // 这会引发错误 }
"use strict"; 语法
声明严格模式的语法被设计为兼容更早版本的 JavaScript。
Koyar da kara JavaScript a kanan hanyar zaiwa (kamar 4+5) ko kuma hanyar zaiwa ("Bill Gates") kai kuma kaiyawa. Ita kai kaiya zaiwannan yar ba da jini, kuma kai kaiya ya kaiya ya kaiya.
所有 "use strict";
只会对“理解”其含义的新编译器产生影响。
Tiwace rarrabawar dacewai?
Rarrabawar dacewai za a gudanar da yin rarrabawar dacewai.
Rarrabawar dacewai za a gudanar da yin dacewa da yin dacewa.
Dake rarrabawar dacewai, kowa kuma gari, kowa kuma gari, za a rika dacewa, kowa kuma gari, za a rika dacewa, kowa kuma gari, za a rika dacewa, kowa kuma gari, za a rika dacewa.
In rarrabawar dacewai, kowa kuma gari, kowa kuma gari, za a rika dacewa, kowa kuma gari, za a rika dacewa.
In rarrabawar dacewai, kowa kuma gari, za a rika dacewa, kowa kuma gari, zuwa dacewai, kowa kuma gari, ko zuwa dacewai, kowa kuma gari, za a rika dacewa.
Rarrabawa dacewai kuma gari:
Fara kara dacewai kuma gari:
"use strict"; x = 3.14; // za a fada dace:
Obaje kuma gari:
Fara kara dacewai kuma gari:
"use strict"; x = {p1:10, p2:20}; // za a fada dace:
Fara kara dacewai kuma gari:
"use strict"; var x = 3.14; delete x; // za a fada dace:
Fara kara dacewai kuma gari:
"use strict"; function x(p1, p2) {}; delete x; // za a fada dace:
Dacewai sunan argunlarin duba:
"use strict"; function x(p1, p1) {}; // za a fada dace:
Dacewai octal number kuma gari:
"use strict"; var x = 010; // za a fada dace:
Kwamtarin dacewai kuma gari:
"use strict"; var x = \010; // za a fada dace:
Fara kara dacewai kuma gari:
"use strict"; var obj = {}; Object.defineProperty(obj, "x", {value:0, writable:false}); obj.x = 3.14; // za a fada dace:
Fara kara dacewai kuma gari:
"use strict"; var obj = {get x() {return 0} }; obj.x = 3.14; // za a fada dace:
Fara kara dacewai kuma gari:
"use strict"; delete Object.prototype; // za a fada dace:
Kwamtarin "eval" ba a kama kuma gari:
"use strict"; var eval = 3.14; // za a fada dace:
Kwamtarin "arguments" ba a kama kuma gari:
"use strict"; var arguments = 3.14; // 这将引发错误
with
语句是不允许的:
"use strict"; with (Math){x = cos(2)}; // 这将引发错误
处于安全考虑,不允许 eval()
A cikin ƙarfin ƙarfin ƙarfin ƙarfin a cikin:
"use strict"; eval ("var x = 2"); alert (x); // zai ƙara ƙara
A cikin ƙarfin f() ƙanin ƙarfin, ƙarfin ƙanin shine ƙarfin ƙaɗan. A cikin ƙarfin ƙarfin, ƙarfin shine undefined
.
Ƙarfin ƙarfin
Ƙarfin ƙarfin ba a ƙarfin aiki a ƙarfin ƙarfin na zukunci. Ana kira su:
- implements
- interface
- let
- package
- private
- protected
- public
- static
- yield
"use strict"; var public = 1500; // zai ƙara ƙara
Ƙarfin
"use strict"
Ƙarfin ƙarfin yana iya aiki ne a cikinƘarfin ƙirwanciAn ƙirwanci
- Ƙarfin na gaba JS Hoisting
- Ƙarfin na gaba ƙanin JS this