1.在ES6(ES2015)出现之前,JavaScript中声明变量就只有通过 var 关键字,函数声明是通过 function 关键字,而在ES6之后,声明的方式有 var . let . const . function . class ,该文主要讨论 var . let 和 const 之间的区别. 2.首先让我们来体验一下let主要是干嘛的 2.1 let主是用来声明变量的,但是let声明的关键是具有块级作用域的,而var声明的变量是不具备这个特点的.那么何为块级作用域呢?块作用域由 {…
var.let.const的区别 var定义的变量,没有块的概念,可以跨块访问, 不能跨函数访问. let定义的变量,只能在块作用域里访问,不能跨块访问,也不能跨函数访问. const用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改. <script type="text/javascript"> // 块作用域 { var a = 1; let b = 2; const c = 3; // c = 4; // 报错 var aa; let…
let 和 const 是 ECMAScript6 新推出的特性,其中 let 是能够替代 var 的"标准",所以我们探讨 var.let 和 const 的区别,首先应该知道 var 到底有什么不规范的地方,或者是说有什么弊端. var 的 特性 变量提升 var 是 Javascript 用来定义变量的一个关键字,这是一个简单的变量定义方式 var a = 0; 但是如果我们在定义这个变量之前,查询这个 a 的话,其实是不会报错误的 console.log(a); /…
readonly与const的区别1.const常量在声明的同时必须赋值,readonly在声明时可以不赋值2.readonly只能在声明时或在构造方法中赋值(readonly的成员变量可以根据调用不同的构造方法赋不同的值)3.const前面不能添加static(因为Const本来就是一个静态常量),readonly前面可以添加static4.const在编译的时候赋值,readonly在运行的时候赋值5.const能在方法内声明,readonly不能在方法内声明 class ReadOnlyA…