- 学习es6的笔记,记录下自己的成长,如有不合理之处,请多多指教,学习途径。
- let 和 var 的区别
let变量只能在代码块内部有效,可以理解为java中的局部变量
var变量可以跨代码块,可以理解为java中的全局变量 - 常量
- const常量,只能一次赋值
- 对象常量,对象的属性可以修改,对象的引用不能修改
Paste_Image.png
- 冻结对象 防止修改对象的属性
- 解构赋值(可以参考链接,说的十分详细)
数组解构赋值,数组的元素是按此排序的,变量的取值由它的位置决定;而对象的属性没有次序,变量必须与属性同名,才能取到正确的值。当然变量名和属性名不同也可以获取到值,可以参考链接
用途:
//1.交换变量的值
let x = 1;
let y = 2;
[x, y] = [y, x];
//2.从函数返回多个值
// 返回一个数组
function func1() {
return [1, 2, 3];
}
let [a, b, c] = func1();
// 返回一个对象
function func2() {
return {
foo: 1,
bar: 2
};
}
let { foo, bar } = func2();
// 3.函数参数定义
//参数是一组有次序的值
//数组解构赋值
function func3([x, y, z]) {}
func3([1, 2, 3]);
// 参数是一组无次序的值
//对象解构赋值
function func4({x, y, z}) { }
func4({z: 3, y: 2, x: 1});
网友评论