let和const是js中的两个关键字,为js提供了块作用域的变量和常量。
let关键字:
大家可能都知道js有全局变量和局部变量两种,其实还有块作用域。
块作用域的语法格式如下:
<script>
var number = 5;
{
// 此处number = 5
let number = 10;
//此处number = 10
}
//此处number = 5
console.log(number);
//结果是:5
</script>
这里需要注意{}内使用let关键字定义变量,使用var的话会变为全局变量。
const关键字:
const定义的变量和let定义的变量相似(包括作用域),只不过const定义变量后其值是不能改变的(类似于常量)。
const关键字用法:
1.const关键字定义的变量必须在声明是赋值。
2.const定义的变量作用域和let定义的变量相同。
示例如下:
<script>
var num = 1;
{
// 此处num = 1
const num = 5;
//此处num = 5
}
//此处num = 1
console.log(num);
//结果是:1
</script>
const可以定义常量对象和常量数组,常量对象示例如下:
<script>
const car = { // const关键字创建常量对象,
// 只可修改对象属性的值,不能给对象重新赋值
color:'red';
height:'500kg';
};
//修改常量对象的属性值
car.color = 'white';
//给常量对象添加属性
car.type = 'BMW';
// 不能给常量对象重新赋值
car = {
color:'black';
height:'600kg';
} //这两句是错误的
</script>