let和const

let

/*
var 可以重复声明

let 有块级作用域
没有前置功能
不能重复声明
*/

var a=1;
console.log(a);//1
let b=2;
console.log(b);//2

if(a==1){
var z=2;
}
console.log(z);//2

/if(a1==1){
var z1=2;
}
console.log(z1);//报错 a1 is not defined
/

for (var i = 0; i < 10 ; i++) {
;
}

console.log(i);//10

/*for (let i = 0; i < 10 ; i++) {
;
}

console.log(i);//i is not defined*/

/function fn(){
let c=1;
console.log(c);//1
}
fn()
console.log(c);//报错
/

console.log(d);
//var d=5;//5
//let d=5;//报错 d is not defined

var d=5;
console.log(5);//5
var d=6;
console.log(6);//6

/*let d=5;
console.log(5);//
let d=6;
console.log(6);//报错 重复声明
*/

const

/*
const 是用来声明常量 不可改变的
命名建议大写 不能重复命名
块级作用域
常量在声明的时候必须赋值 但是值是不可以改变的

*/

var a =2;
a=3;
console.log(a);//3

/const a =2;
a=3;
console.log(a);//报错 不能给常量赋值
/

const A =2;
console.log(A);//2

/const a //必须赋值
a=3;
console.log(a);//报错
/

const D=[1,2,3];
D.push(4);//[1,2,3,4]
//D=[1,2,3,4]; 报错
console.log(D);//[1,2,3,4]

posted @ 2017-07-10 21:30  师妹儿  阅读(214)  评论(0)    收藏  举报