一、includes
const arr = [1, 2, 3];
console.log(arr.includes(2)); // true
console.log(arr.includes(4)); // false
Array.prototype.includes:判断数组里有没有这个元素
二、扁平化数组
const arr = [1, [2, [3, [4]]]];
console.log(arr.flat(2)); // [1, 2, 3, [4]]
Array.prototype.flat:扁平化数组
三、可选链和空值合并
const user = { name: "John" };
console.log(user.address?.city); // undefined,不会抛出错误
可选链操作符 ?.:不用担心取不到值
const value = null ?? 'default';
console.log(value); // 'default'
空值合并操作符 ??:给空值一个默认值
四、replaceAll
const str = 'foo bar foo';
console.log(str.replaceAll('foo', 'baz')); // baz bar baz
replaceAll:一次性替换所有匹配的子字符串
五、findLast
const arr = [1, 2, 3, 4];
console.log(arr.findLast(x => x % 2 === 0)); // 4
Array.prototype.findLast 和 findLastIndex:从数组末尾开始查找元素
六、Set和Map
const set = new Set([1,2,3,4,4]);//自动去重
const array = Array.from(set);
Array.from()方法可以将 Set 结构转为数组。
Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应,是一种更完善的 Hash 结构实现。如果你需要“键值对”的数据结构,Map 比 Object 更合适。
const map = new Map([
['name', '张三'],
['title', 'Author']
]);
map.size // 2
map.has('name') // true
map.get('name') // "张三"
map.has('title') // true
map.get('title') // "Author"
396

被折叠的 条评论
为什么被折叠?



