我是靠谱客的博主 淡淡面包,这篇文章主要介绍jquery中关键字let的含义是什么,现在分享给大家,希望可以做个参考。

本教程操作环境:windows7系统、jquery3.6.0版本、Dell G3电脑。

在jquery中,let是一个声明变量的关键字。

let关键字声明一个块级作用域的局部变量,并可以初始化为一个值(可选)。语法:

复制代码
1
let name1 [= value1] [, name2 [= value2]] [, ..., nameN [= valueN];
登录后复制

参数

  • nameN:要声明的一个或多个变量的名称,必须是合法的标识符。

  • valueN:可选,规定变量的初始值,可以是任意合法的表达式。

示例:

复制代码
1
2
3
4
5
6
7
8
9
10
11
let x = 1; if (x === 1) { let x = 2; console.log(x); // expected output: 2 } console.log(x); // expected output: 1
登录后复制

1.png

说明:

let 允许你声明一个作用域被限制在块作用域中的变量、语句或者表达式。与 var 关键字不同的是,var 声明的变量作用域是全局或者整个函数块的。 var 和 let 的另一个重要区别,let 声明的变量不会在作用域中被提升,它是在编译时才初始化(参考下面的暂时性死区)。

就像 const 一样,let 不会在全局声明时(在最顶层的作用域)创建 window 对象的属性。

可以从这里了解我们为什么使用 let。

通过在使用 let 变量的作用域顶部声明它们,可以避免很多问题,但这样做可能会影响可读性。

与 var 不同的是,let 只是开始声明,而非一个完整的表达式。这意味着你不能将单独的 let 声明作为一个代码块的主体(这是有道理的,因为声明的变量无法被访问)。

复制代码
1
if (true) let a = 1; // SyntaxError: Lexical declaration cannot appear in a single-statement context
登录后复制

作用域规则

let 声明的变量作用域只在其声明的块或子块内部,这一点,与 var 相似。二者之间最主要的区别在于 var 声明的变量的作用域是整个封闭函数。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
function varTest() { var x = 1; { var x = 2; // same variable! console.log(x); // 2 } console.log(x); // 2}function letTest() { let x = 1; { let x = 2; // different variable console.log(x); // 2 } console.log(x); // 1} letTest(); varTest();
登录后复制

2.png

在全局作用域中,let 和 var 不一样,它不会在全局对象上创建属性。例如:

复制代码
1
2
3
4
var x = 'global'; let y = 'global'; console.log(this.x); // "global" console.log(this.y); // undefined
登录后复制

3.png

重复声明

在同一个函数或块作用域中重复声明同一个变量会抛出 SyntaxError。

复制代码
1
2
3
4
if (x) { let foo; let foo; // SyntaxError thrown. }
登录后复制

在 switch 语句中也会触发这个错误,因为它是同一个块作用域。

复制代码
1
2
3
4
5
6
7
8
9
10
let x = 1; switch(x) { case 0: let foo; break; case 1: let foo; // SyntaxError for redeclaration. break; }
登录后复制

4.png

然而,需要特别指出的是,一个嵌套在 case 子句中的块会创建一个新的块作用域的词法环境,就不会产生上诉重复声明的错误。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
let x = 1; switch(x) { case 0: { let foo; break; } case 1: { let foo; break; } }
登录后复制

【推荐学习:jQuery视频教程、web前端视频】

以上就是jquery中关键字let的含义是什么的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是淡淡面包最近收集整理的关于jquery中关键字let的含义是什么的全部内容,更多相关jquery中关键字let内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(100)

评论列表共有 0 条评论

立即
投稿
返回
顶部