var,let和const
声明变量的三大关键字:
var
let
const
三者的区别:
1.var是在ES5中用于声明变量的关键字。var在局部环境中声明的是局部变量,在全局环境中声明的是全局变量(相当于不用var)。
var a = 0; // 相当于 a = 0 ,在全局作用域下声明了一个变量a并赋值0。
function fun(){var a = 0; // 在fun函数作用域中声明了一个变量a并赋值;在函数外部无法访问,且与函数外部的变量a不为同一个变量,互不干扰。console.log(a);
}
a = 2; // 修改全局变量a的值
fun(); // 输出0;
2.let是ES6中用于声明变量的关键字。let声明的是局部变量,它所声明的变量只在let命令所在的代码块内有效。
for(let i = 0;i < 10;i++){console.log(i); // 正常循环输出i值
}
for循环没有独立的作用域,如果括号中用var声明i变量,那么i就是全局变量,而用let声明的是局部变量,在for语句外部无法访问:
for(let i = 0;i < 10;i++){ console.log(i); // 正常循环输出i值}
console.log(i); // 代码块外部取不到i值
3.const声明的是一个常量,本质为一个内存地址,指向堆内存中的一个对象。
const a = 0; // 用const声明变量a后一定要赋值,且赋值后不能修改。
注意:和let一样,const声明的是局部变量,只在其声明的代码块内有效。
var,let和const相关推荐
- ES6/06/ES6简介,ES6新增语法,let声明变量,const声明常量,var,let和const总结,数组解构,对象解构,箭头函数,剩余参数
ES6简介 ES全称:ECMAScript ; 由ECMA国际化组织制定的标准脚本语言的标准化规范: 为什么使用ES6? 每一次标准的诞生都意味着语言的完善,功能的加强,JavaScript语言本身也 ...
- JS红书宝--var,let和const声明变量
var,let和const声明变量 var 声明 var声明作用域 function test() { var message = "hi"; // 局部变量 } test(); ...
- js中定义变量之②var let const的区别
var 上一篇文章有讲过,是js定义变量的关键词. 但是在es6中,新添加了两个关键词,用于变量声明的关键词:let 和const 接下来就说一下var let 和const的区别: 首先说var 用 ...
- javascript中var、let、const声明的区别
我在上一篇文章javascript中词法环境.领域.执行上下文以及作业详解中的最后稍微提到了有关var.let.const声明的区别,在本篇中我会重点来分析它们之间到底有什么不同. 提到var.let ...
- uniapp 获取到js文件var一个变量怎么获取到这个变量值_浅析Js中const,let,var的区别及作用域...
理解:let变量的作用域只能在当前函数中 js中const,let,var的区别及作用域_lianzhang861的博客-CSDN博客blog.csdn.net 全局作用域中,用 const 和 l ...
- ES6——let、const和var的用法和区别
ES6 新增了let命令,用来声明变量,新增了const命令,用来声明常量,它们的用法类似于var. let a = 1; var b = 2; const PI = 3.14; 主要区别 块级作用域 ...
- Var,Let和Const –有什么区别?
A lot of shiny new features came out with ES2015 (ES6). And now, since it's 2020, it's assumed that ...
- var和let和const_用故事讲解JavaScript的var,let和const变量
var和let和const by Prarthana S. Sannamani 通过Prarthana S.Sannamani 用故事讲解JavaScript的var,let和const变量 (Jav ...
- 犀牛书第七版学习笔记:let、const和 var 声明与赋值
目录 0.基本常识 0.1变量与常量 0.2 作用域scope 0.3 重复声明 1.var 1.1 var声明作用域 var Declaration Scope 函数作用域 全局var声明 1.2 ...
- 复习es6-let和const
1.声明变量的方法 es5 : var function es6 : var function let const class 2.let(const)与var 不同 let不能 ...
最新文章
- Cell:基因表达的改变和群落的更替塑造了全球海洋宏转录组
- CodeForces - 261B Maxim and Restaurant
- [NOIP模拟测试3] 建造游乐园 题解(欧拉图性质)
- 关系数据库——关系数据语言
- c语言程序设计臧,清华大学出版社-图书详情-《C程序设计基础(第2版)》
- Python SHA1加密算法
- mysql使用技巧,使用Mysql的小技巧总结
- c函数strstr和sscanf组合高级技巧
- C++编程语言中sizeof和strlen介绍
- 北理乐学c语言基础答案晕,北理乐学C语言答案最新.doc
- 【元胞自动机】基于元胞自动机模拟和改进遗传算法的动态网络分配模型分析matlab仿真
- 怎么制作GIF图片并添加文字
- 懒人精灵新版图色工具介绍
- win11资源管理器总是自动重启的解决方法
- 2020云栖大会-达摩院
- 静态化freemarker,分布式文件系统minIO
- 显示隐藏图片html,JavaScript实现显示和隐藏图片
- 用互动的方式打开“11月全国气象短视频(快手、抖音)影响力榜单“
- Linux 块设备层中的Multi-queue分析
- 事务Read Committed (读已提交)和Repeatable Read(可重复读)到底什么区别?
热门文章
- ubuntu qt编译mysql报错_[Linux]QT编译Mysql驱动(Mariadb驱动),解决qmake报错问题
- 关于嵌入式的技术竞争力需要花点时间整理一下给大家
- ffmpeg截取视频流、rtsp录mp4,与海思NVR,内存问题
- 两个PDF比较标出差异_PDF最全接触
- 转:AIX菜鸟成长日志
- mysql myisam表分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
- unable to infer tagged configuration编译报错
- 嵌入式芯片加密防抄板技巧简析
- Steering Behaviors
- es中should查询使用注意