No.45 ES6---let命令、const命令、对象解构赋值
一、let命令
- ES6 新增了let 命令,用来声明变量。它的用法类似于 var ,但是所声明的变量,只在let 命令所在的代码块内有效。
<script>
/*
1.var关键字:函数级的作用域
2.let关键字:块级作用域(花括号级的作用)
没有变量提升
不能重复声明
*/
</script>
二、const 命令
- const 声明一个只读的常量。一旦声明,常量的值就不能改变。
- const 声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值.
- const 的作用域与let命令相同:只在声明所在的块级作用域内有效.
- const 命令声明的常量也是不提升.
- const 声明的常量,也与let一样不可重复声明。
三、变量的解构辅助之对象解构赋值(还有字符串什么的,用的不多,这里只介绍对象的)
<script>
var user = {
name:"zhangsan",
age:20
}
console.log(user.name)// 每次调用name要用user. 比较麻烦。利用解构赋值的方法简化。
</script>
解构赋值
<script>
var user = {
name:"zhangsan",
age:20
}
const { name,age } =user;
console.log(name,age)
</script>
- 对象的解构赋值,可以很方便地将现有对象的方法,赋值到某个变量。
<script>
var user = {
name:"zhangsan",
age:20
}
const { name,age } =user;
const {log} = console;
log(name,age); //直接log,不用console.log
</script>
const {abs, random} = Math ;