一、Promise
all,allSettled,race,any。all方法可能用的多一些,其他相对较少。all与allSettled方法相似,不同的是all方法只要请求错误就会中断,返回错误信息,allSettled不会中断,会将所有正确及错误信息全部返回,race是返回请求返回最快的一个信息,无论成功还是失败,any则是返回第一个请求成功的信息,若都失败,则返回失败信息
二、数组
数组扁平化
Array.prototype.flat() // 接收参数,展开层数
const arr1 = [0, 1, 2, [3, 4]];
console.log(arr1.flat());
// expected output: [0, 1, 2, 3, 4]
const arr2 = [0, 1, 2, [[[3, 4]]]];
console.log(arr2.flat(2));
// expected output: [0, 1, 2, [3, 4]]
console.log(arr2.flat(Infinity)); // Infinity 为展开所有层数
// expected output: [0, 1, 2, 3, 4]
数组迭代
查找:find,filter ; find返回找到的第一个值,找到后就中断查找,filter返回找到所有数据的数组对象
const a = [1,2,3,4,5];
const result = a.find( item =>{
console.log(item)
// expected output: 1, 2, 3
return item === 3
}
const result = a.filter( item =>{
console.log(item)
// expected output: 1, 2, 3, 4, 5
return item === 3
}
三、空值合并运算符 ??
运算符 A ?? B 表示A不为null 或 undefined 则返回A 否则返回B
判断是否为空,可取消0和false的判断影响
if((value??'') !== ''){//...
}