let和const

使用var

  1. 变量提升
  2. 同一个作用域下会重复声明多个相同名的变量
  3. 挂载window上

使用let

  1. 不会 变量提升
  2. 不会 同一个作用域下会重复声明多个相同名的变量
  3. 不会 挂载window上

声明变量

console.log(a);  // 变量提升
a++;
console.log(a);

var a = 10;
var a = 20;
console.log(a);

var miaov = 10;
console.log(window.miaov);

// let 声明变量
//console.log(ketang);
let ketang = 2000;
/*let ketang = 5000;
console.log(ketang);*/
console.log(window.ketang);

let和闭包

for(let i = 0; i < lis.length; i++) {
    lis[i].onclick = function(){
       alert(i)
   }
  }

const 声明常量 一旦定义给了变量,变量存的值不能变

let a = 30;

a = 'miaov';

var VALUE = 'leo'; // 约定,变量的值不可改,不能重新赋值
VALUE = 10;
console.log(VALUE);

const hello = 'leo';
hello = 'hi'; // Uncaught TypeError: Assignment to constant variable.
console.log(hello);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容