js-var与let

var

使用 var 声明的变量具有函数作用域或全局作用域(如果在函数外部声明)。这意味着在 for 循环外部,仍然可以访问到使用 var 声明的循环变量 i。

javascript 复制代码
for(var i = 0; i < 3; i++){
    console.log(i)
}
console.log(i)
0
1
2
3

let

使用 let 声明的变量具有块作用域,它只在其被声明的块(在这种情况下是 for 循环体)内部可见。一旦退出循环,i 变量就不再可用。

javascript 复制代码
for(let j = 0; j < 3; j++){
    console.log(j)
}
console.log(j)
0
1
2
ReferenceError: j is not defined
相关推荐
小小前端要继续努力2 分钟前
渐进增强、优雅降级及现代Web开发技术详解
前端
S***q1923 分钟前
Rust在系统工具中的内存安全给代码上了三道保险锁。但正是这种“编译期的严苛”,换来了运行时的安心。比如这段代码:
开发语言·后端·rust
打点计时器11 分钟前
matlab 解决wfdb工具使用本地数据集报错
开发语言·matlab
zmzb010316 分钟前
C++课后习题训练记录Day38
开发语言·c++
夏霞27 分钟前
c# 使用vs code 创建.net8.0以及.net6.0 webApi项目的教程
开发语言·c#·.net
T***u33340 分钟前
Rust在Web中的 Web框架
开发语言·后端·rust
bubiyoushang8881 小时前
MATLAB实现机械臂GUI仿真系统
开发语言·matlab
老前端的功夫1 小时前
前端技术选型的理性之道:构建可量化的ROI评估模型
前端·javascript·人工智能·ubuntu·前端框架
听风吟丶1 小时前
Java 高级多线程编程:从虚拟线程到结构化并发的实战演进
java·开发语言
lijiatu100861 小时前
C++ 类成员变量声明语法错误
java·开发语言·c++