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
相关推荐
C_心欲无痕26 分钟前
nginx - alias 和 root 的区别详解
运维·前端·nginx
行者9633 分钟前
Flutter跨平台开发在OpenHarmony上的评分组件实现与优化
开发语言·flutter·harmonyos·鸿蒙
阿蒙Amon44 分钟前
C#每日面试题-Array和ArrayList的区别
java·开发语言·c#
SmartRadio1 小时前
ESP32添加修改蓝牙名称和获取蓝牙连接状态的AT命令-完整UART BLE服务功能后的完整`main.c`代码
c语言·开发语言·c++·esp32·ble
且去填词1 小时前
Go 语言的“反叛”——为什么少即是多?
开发语言·后端·面试·go
知乎的哥廷根数学学派2 小时前
基于生成对抗U-Net混合架构的隧道衬砌缺陷地质雷达数据智能反演与成像方法(以模拟信号为例,Pytorch)
开发语言·人工智能·pytorch·python·深度学习·机器学习
yeziyfx2 小时前
kotlin中 ?:的用法
android·开发语言·kotlin
charlie1145141912 小时前
嵌入式的现代C++教程——constexpr与设计技巧
开发语言·c++·笔记·单片机·学习·算法·嵌入式
我是苏苏3 小时前
Web开发:C#通过ProcessStartInfo动态调用执行Python脚本
java·服务器·前端