一、解构赋值
解构赋值:
按照一定模式(规则),从数组和对象中提取值(变量的值的来源),对变量进行赋值(作用)。
数组的解构赋值
let arr = [1, 2, 3];
let [a, b, c] = arr;
console.log(arr);

let obj = { name: "jake", age: "21" };
let { name, age } = obj;
console.log(obj);

-
解构规则
必须要通过键名进行关联(没有键名就是undefined) -
沿着原型链进行
-
函数参数中的解构赋值
需要通过对象名.属性名的方式进行访问
function f(name, age) {
console.log(name, age);
}
f({ name: "jake", age: 30 });

解构赋值的应用
- 交换变量的值
let a = 2;
let b = 3;
[a,b]=[b,a];
console.log(a,b)
二、spread
扩展运算符:
就是“...”三个点,将实现iterator接口的对象中的每个元素都一个个的迭代并取出来变成单独的使用。
数组中的扩展运算符
var arr=[1,2,3];
var arr2=[...arr];

- 把字符串转成数组:
(1)字符串的split方法

let str="Abc";
let arr=[...str];
console.log(arr)
- 合并数组
(1)数组对象的concat方法(如果不是数组,则先转成数组,再concat连接)
let arr1=[1,2];
let arr2=[3,4];
let arr=arr1.concat(arr2);
console.log(arr)
(2) [...]
let arr1=[1,2];
let arr2=[3,4];
let arr=[...arr2, ...arr1 ]
console.log(arr)

三、字符串扩展
trim
不影响原字符串
- trim:去掉字符串左右的空格
- trimLeft:去掉字符串左边的空格
- trimRight:去掉字符串右边的空格
模板字符串
模板字符型格式:
-
`${变量名}` -
`${对象.属性名} -
`${表达式}
repeat
作用:按照指定此时重复指定的内容
格式:字符串.repeat(n)
includes、startsWith、endsWith
- 字符串.includes(子串)是否包含子串;

- 字符串.startsWidth(子串):是否以子串开始

- 字符串.endsWidth(子串):是否以子串结束 返回值是 true | false
padStart、padEnd
- 字符串.padStart(指定的长度,字符)
- 字符串.padEnd(指定的长度,字符)
- padStart在字符串的前面进行填充,以达到指定的长度。
- padEnd 在字符串的后面进行填充,以达到指定的长度。
