åå¡
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015å¹´7æ.
總覽
åå¡é³è¿°ç¨ä¾çµåé¶åæå¤åé³è¿°ãæå使ç¨ä¸å°å¤§æ¬è { } 以çå®åå¡ã
| é³è¿°å¥ | |
|---|---|
| Implemented in | JavaScript 1.0 |
| ECMAScript edition | ECMA-262 1st edition |
èªæ³
{
é³è¿°_1
é³è¿°_2
...
é³è¿°_n
}
忏
é³è¿°_1,é³è¿°_2,é³è¿°_n-
åå¡é³è¿°ä¸çé³è¿°å¥ç¾¤ã
說æ
åå¡é³è¿°é常é
åæµç¨æ§å¶é³è¿°ï¼å¦ ifãforãwhileï¼ä¸ä½µä½¿ç¨ã
var
使ç¨varåå¡ä¸å®ç¾©çè®æ¸ï¼å
¶ååç¯åæ¯æ´åæ´åå½å¼ææ¯è
³æ¬ï¼å³çº Execution Context çç¯åä¸ã
var x = 1;
{
var x = 2;
}
alert(x); // outputs 2
輸åºçµææ¯ 2ãå çº var æ¯å®£åæ¼æ´åè ³æ¬ç¯åä¸ã
let å const
ç¶ä½¿ç¨letææ¯consté²è¡å®£åæï¼å
¶ååç¯åæ¯åªææ¬èº«å®ç¾©çåå¡ä¸ã
let x = 1;
{
let x = 2;
}
console.log(x); // logs 1
function
ç¶ function 被å¼å«æï¼æå»ºç«æ¤ function ç Execution Contextï¼å æ¤å¨ function åå¡ä½¿ç¨varæ´å function åå¡ä¸é½å¯å°å
¶é²è¡ååã
function foo() {
{
var a = "var";
{
let a = "let";
console.log(a); // let
}
}
console.log(a); // var
}
foo();
è¦ç¯
| Specification |
|---|
| ECMAScript® 2027 Language Specification> # sec-block> |