目录
1.解构
1.1对象解构
1.2字符串解构
1.3函数解构
1.4总结
2.模板字符串
3.实例方法:startsWith() 和 endsWith()
4.箭头函数
4.1箭头函数的格式
4.2箭头函数可以省略的部分
4.3箭头函数总结
5. 剩余参数rest参数
在解构对象时要求变量名和对象的属性名保持一致,顺序不需要一致,可以随便写,但变量名和属性名一定要保持一致否则会输出undefined。当属性名和变量名一致时可以进行简化,
//1.变量名和属性名保持一致
let person = { name: 'zhangsan', age: 20 };
let { name, age } = person;
console.log(name); // 'zhangsan'
console.log(age); // 20
如果觉得原对象的属性名过长,也可以给属性写一个别名。
let {name: myName, age: myAge} = person; // myName myAge 属于别名
let str="hello";
let [a,b,c,d,e]=str;
console.log(a,b,c,d,e);
可以通过字符串解构来完成交换变量的工作,此时不需要第三个变量参与,只需要两个变量就可以完成工作。
let a=10;let b=5;
[b,a]=[a,b]
console.log(a,b)
(1)函数返回值解构
function show(){
return [100,200,300];
}
let [a,b,c]=show();
console.log(a,b,c)
(2)函数参数解构
function show([a,b,c]){
let sum=a+b+c;
console.log(sum);
}
show([100,200,300]);
let str = 'Hello world!';
str.startsWith('Hello') // true
str.endsWith('!') // true
let str = 'Hello ECMAScript 2015';
let r1 = str.startsWith('Hello');
console.log(r1);
let r2 = str.endsWith('2016');
console.log(r2)
箭头函数的格式:() => { }
const fn = () => {
console.log(123)
}
fn();
箭头函数就是用来简化函数定义的语法的,但在编写构造函数时就不要用箭头函数来编写了,因为用箭头函数编写的构造函数不可以使用new来实例化对象,那么我们创建构造函数就没有意义了。所以不推荐使用箭头函数来编写构造函数。
ES6引入rest参数,用于获取函数的实参,用来代替arguments,写在函数的形参部分
格式:...
let students = ['wangwu', 'zhangsan', 'lisi'];
let [s1, ...s2] = students;
console.log(s1); // 'wangwu'
console.log(s2); // ['zhangsan', 'lisi']