一.扩展运算符
1.合并多个数组:
let arr1 = [1,2,3,5] let arr2 = [4,5,6,7] let newArr = [...arr1,...arr2]
2.合并对象:
let obj1 = {name:'zs'}
let obj2 = {age:18}
let newObj = {...obj1,...obj2}
console.log(newObj)//{name:'zs',age:'18'}
3.函数中传递多个参数:
function add(a,b,c,d){
console.log(a,b,c,d)
}
let arr = [3,8,12,76]
add(...arr)
4.求数组中的最大最小值:
let arr = [9,4,5,8,9]
console.log(Math.max(...arr))//9
5.取出对象中的一部分:
let obj = {x:1,y:2,a:3,b:4}
let {x,y,...z} = obj
console.log(z)//{a:3,b:4}
二.结构赋值
1.为多个变量赋值
let [a,b,c] = [1,2,3]
2.对象的解构:
let {name,age} = {name:'zs',age'18'}
name//zs
age//18
3.字符串的解构:
let [,,,,a] = 'hello'
a//'o'
4.变量的交换:
let x=1,y=2;
[x,y] = [y,x]
三.其他
for…of 遍历字符串
for(let str of ‘string’){}
let name = ‘guojierui’
name.includes(‘g’)//true,字符串中是否包含该字符
name.startsWith(‘i’)//true,开头的字符是否为i
name.endsWith(‘i’)//true,结尾的字符是否为i
name.repeat(3)//返回一个新字符串,将原字符串重复3次
padStart(),padEnd():
let str = ‘234’
str.padStart(5,‘ab’)//ab234,注意如果str长度在加上ab之后还是小于5,将重复添加ab,如:aba234
str.padEnd(5,‘ab’)
四.Array.from
定义:将一个类数组对象或可遍历对象转换成一个真正的数组。所谓类数组对象,最基本的要求是具有length属性。
用法:
1.将Set解构的数据转换为数组:
let arr = [1,2,3,4,2,3,5,6]
let newArr = Array.from(new Set(arr))
2.将字符串转换为数组:
let str = ‘womendosuhizhuimengren’
Array.from(str)
五.Set
set对象是值的集合,元素只会出现一次,set中的元素是唯一的。
1.set对象与数组之间互转:
let arr = [1,2,3,4,5]
let set = new Set(arr)
let arr2 = Array.from(set)//方式一
[…set]//方式二
set用途:
1.结合Array.from数组去重。
2.两个数组并集:
let arr = […new Set([…arr1,…arr2])]
3.交集:
let arr = […new Set(arr1.filter(x=>new Set(arr2).has(x))]