JS的var和let、const使

let与var区别

var是ES5标准中声明变量的方式,而let是ES6标准中新增的声明变量的方式。

var声明的变量是函数作用域或全局作用域,而let声明的变量是块级作用域。

var声明的变量在变量声明之前就可以使用,而let声明的变量只有在变量声明之后才能使用。

全局作用域
var 和 let 声明的变量在全局作用域中被定义时,两者非常相似

let bar = 'let的';
var baz = 'var的'; 

但是,被let声明的变量不会作为全局对象window的属性,而被var声明的变量却可以

console.log(window.bar);  //undefined
console.log(window.baz); // 'able'

函数作用域

        var 和 let 在函数作用域中声明一个变量,两个变量的意义是相同的。

function  aFun(){
    let bar = 'let的'; // 函数作用域中的变量
    var baz = 'var的'; // 函数作用域中的变量
}

 块作用域
在块作用域中两者的区别较为明显, let只在for()循环中可用,而 var是对于包围for循环的整个函数可用

function  aFun1(){
    // i 对于for循环外的范围是不可见的(i is not defined)
    for(let i = 1; i<5; i++){
        //  i只有在这里是可见的
    }
    // i 对于for循环外的范围是不可见的(i is not defined)
}
function aFun2(){
    // i 对于for循环外的范围是可见的
    for(var i = 1;i<5; i++){
        // i 在for 在整个函数体内都是可见的
    }
    // i 对于for循环外的范围是可见的
}
 

let 和var 重新声明


var允许在同一作用域中声明同名的变量,而let不可以

let me  = 'foo';
let me  = 'bar'; //SyntaxError: Identifier 'me' has already been declared
 

 const
es6中还有一个声明变量的命令const,const和let都是在声明的块作用域中有效,但是let声明的变量可变,值和类型都可以改变,没有限制。const声明额变量不能改变,所以,const一旦声明一个变量,就必须马上初始化,不能留到以后赋值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/761318.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Hypervisor 采用分离设备驱动模型实现I/O 虚拟化

Hypervisor&#xff08;虚拟机监视器&#xff09;在实现I/O&#xff08;输入/输出&#xff09;虚拟化时&#xff0c;往往会采用分离设备驱动模型&#xff08;Split Device Driver Model&#xff09;的设计思路。这种模型的核心理念是将物理设备驱动程序的工作拆分为两部分&…

【DL经典回顾】激活函数大汇总(四十二)(CosReLU附代码和详细公式)

激活函数大汇总(四十二)(CosReLU附代码和详细公式) 更多激活函数见激活函数大汇总列表 一、引言 欢迎来到我们深入探索神经网络核心组成部分——激活函数的系列博客。在人工智能的世界里,激活函数扮演着不可或缺的角色,它们决定着神经元的输出,并且影响着网络的学习能…

请解释 VB.NET 中的事件(Event)

请解释 VB.NET 中的事件&#xff08;Event&#xff09; 在VB.NET中&#xff0c;事件&#xff08;Event&#xff09;是一种机制&#xff0c;用于在类之间实现松耦合的通信。事件允许一个对象&#xff08;称为事件源&#xff09;通知其他对象&#xff08;称为事件处理程序&#…

【热门话题】深入浅出:npm常用命令详解与实践

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 标题&#xff1a;深入浅出&#xff1a;npm常用命令详解与实践引言一、npm基本概…

Kubernetes的Namespace使用

在 Kubernetes 中&#xff0c;命名空间提供了一种用于隔离单个集群中的资源组的机制。资源名称在命名空间内必须是唯一的&#xff0c;但不能跨命名空间。基于命名空间的作用域仅适用于命名空间物体 &#xff08;例如部署、服务等&#xff09;而不是集群范围的对象&#xff08;例…

《由浅入深学习SAP财务》:第2章 总账模块 - 2.4 会计凭证处理

2.4.1 会计凭证处理的基本概念 会计凭证是企业经济业务在会计上的反映&#xff0c;它是用会计语言表达的一种单据。 典型生产企业的财务凭证创建方式&#xff1a; 企业在实施SAP的过程中&#xff0c;大部分凭证都是自动生成的。要保证这些凭证能准确地生成&#xff0c;必须要满…

全流程解析:R语言在Meta分析中的核心技术应用

R语言作为一种强大的统计分析和绘图语言&#xff0c;在科研领域发挥着日益重要的作用。其中&#xff0c;Meta分析作为一种整合多个独立研究结果的统计方法&#xff0c;在R语言中得到了广泛的应用。通过R语言进行Meta分析&#xff0c;研究者能够更为准确、全面地评估某一研究问题…

Linux系统之jq工具的基本使用

Linux系统之jq工具的基本使用 一、jq工具介绍1. jq工具简介2. jq工具的特点 二、jq工具的安装1. yum安装jq2. 二进制安装jq 三、jq命令的使用帮助1. 查询jq命令帮助信息2. jq命令的选项解释 四、jq命令的基本使用1. 显示json文件的所有的key2. 显示key对应的值3. 查询json文件4…

掌握Python数据分析:从入门到精通【文末送书-43】

文章目录 掌握Python数据分析&#xff1a;从入门到精通入门篇进阶篇精通篇 Python数据分析从入门到精通&#xff08;第2版&#xff09;&#xff08;软件开发视频大讲堂&#xff09;【文末送书-43】 掌握Python数据分析&#xff1a;从入门到精通 Python已成为数据科学领域最受欢…

网工内推 | 云计算工程师,HCIE认证优先,最高18k*14薪

01 杭州中港科技有限公司 招聘岗位&#xff1a;云计算工程师 职责描述&#xff1a; 1、承担云计算相关工程交付、业务上云及售前测试&#xff0c;从事虚拟化、桌面云、存储、服务器、数据中心、大数据、相关产品的工程项目交付或协助项目交付。 2、承担云计算维护工程师职责&…

C# 实时监听文件夹以及文件夹内部的变化

主要是使用系统自带的System.IO.FileSystemWatcher这个类&#xff0c;废话不多说&#xff0c;直接上代码&#xff1a; /// <summary>/// 文件监听/// </summary>public class FileFolderMonitor{private FileSystemWatcher fileSystemWatcher;/// <summary>…

基于springboot创建mybatis

第一步&#xff1a;创建项目 第二步&#xff1a;添加依赖 第三步&#xff1a;连接MySQL 第四步&#xff1a;添加MySQL配置 #驱动类名称 spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver #数据库连接的url spring.datasource.urljdbc:mysql://localhost:3306/myb…

泰克Tektronix MDO4034C混合域示波器

181/2461/8938产品概述&#xff1a; MDO4034C混合域示波器&#xff1a;350 MHz模拟带宽&#xff0c;2.5 GS/s采样率&#xff0c;20 M 点记录长度&#xff0c;4模拟通道&#xff1b;MDO4000C混合域示波器是一款功能强大的高性能六合一示波器。MDO4000C混合域示波器是一款功能强…

【Python-Pandas】to_csv用法示例

to_csv用法示例 X_train.to_csv("F:\\PaperCode\\Mypaper_python_code\\data\\dataset_split\\X_train.tsv", indexFalse)index &#xff1a;表示是否保存索引&#xff0c;如果是True&#xff0c;则保存索引。默认是True

恭贺熊盛熊入围2024中国别墅门十大品牌

近日&#xff0c;2024年别墅门十大品牌终于在万众期待中正式落下帷幕。在这里恭喜熊盛熊顺利入围&#xff0c;成功跻身2024年中国别墅门十大品牌前十强&#xff01; 熊盛熊隶属于武义熊盛熊门业有限公司。熊盛熊门业是一家集设计、开发、生产、销售及服务于一体的高科技生产型企…

蓝桥刷题--四元组问题和肖恩的投球游戏加强版

1.四元组问题 我的这个代码有点问题&#xff0c;我也找不出来&#xff0c;哪位大佬指正一下 // 四元组问题 //思路 // 是否存在 a < b < c < d, 使得nums[d] < nums[c] < nums[a] < nums[b] //分别维护二元组 (a, b) 和 (c, d), 对合法 b 维护前缀 max 的 n…

冲刺跑转长跑过程中,新茶饮品牌如何觅增量?

如今&#xff0c;新茶饮行业的发展日趋成熟&#xff0c;并通过资本动作、市场扩张等释放出相关信号。 比如&#xff0c;在资本动作上&#xff0c;IPO已成为新茶饮品牌发展的重要议程。可以看到&#xff0c;截至2023年2月&#xff0c;正在推进港交所IPO的新茶饮企业就有茶百道、…

【力扣】力扣合集

统计 CSDN 力扣 持续更新 1. 两数之和2. 两数相加9. 回文数13. 罗马数字转整数14. 最长公共前缀21. 合并两个有序链表26. 删除有序数组中的重复项27. 移除元素28. 找出字符串中第一个匹配项的下标35. 搜索插入位置58. 最后一个单词的长度66. 加一67. 二进制求和69. x 的平方根…

公司系统中了.rmallox勒索病毒如何恢复数据?

早晨上班时刻&#xff1a; 当阳光逐渐洒满大地&#xff0c;城市的喧嚣开始涌动&#xff0c;某公司的员工们纷纷踏入办公大楼&#xff0c;准备开始新的一天的工作。他们像往常一样打开电脑&#xff0c;准备接收邮件、查看日程、浏览项目进展。 病毒悄然发作&#xff1a; 就在员…

数学建模常用的代码

Dijkstra算法找最短路径代码 算法的核心就是从原点出发&#xff08;原点可以是自己定义的任意一个点&#xff09;&#xff0c;以原点为圆心&#xff0c;半径从小到大&#xff0c;判断原点到半径上面的点的最短距离&#xff0c;这个距离可能是圆心r0->r1&#xff08;半径较小…