Object.entries 对象遍历
将对象中每个属性转为一个数组
Array.filter过滤器
Array.filter(item => {
return false // 改item不添加到数组
return true // 改item会添加到数组中
})
数组合并Array.concat()
array1.concat(array2) array1 合并 array2
Object.keys() 获取对象的key
Array.some() 指定条件对比
用于检测数组中的元素是否有满足指定条件的,若满足返回true,否则返回false;
语法:array.some(function(item,index,array){
//item:当前元素的值;
//index:当前元素的索引;
// array:当前元素的数组对象;
})
1、some()方法会依次执行数组的每个元素;
2、 如果有一个元素满足条件,则表达式返回true,剩余的元素不会再执行检测。
如果没有满足条件的元素,则返回false
注意:some()不会对空数组进行检测;
some()不会改变原始数组;
常用于对象的对比
export const objEqual = (obj1, obj2) => {
const keysArray1 = Object.keys(obj1);
const keyArray2 = Object.keys(obj2);
if (keysArray1.length !== keyArray2.length) return false;
else if (keysArray1.length === 0 && keyArray2.length === 0) return true;
else return !keysArray1.some(key => obj1[key] !== obj2[key]);
};
Array.every() 数组遍历判断
用于检测数组中所有元素是否都符合指定条件,若符合返回true,否则返回false;
语法:array.every(function(item,index,array){
//item:当前元素的值;
//index:当前元素的索引;
// array:当前元素的数组对象;
})
1、every()方法使用指定函数检测数组中的所有元素;
2、如果数组中检测到有一个元素不满足,则整个表达式返回false,且剩余的元素不会再进行检测。
如果所有元素都满足条件,则返回true;
注意:every()不会对空数组进行检测;
every()不会改变原来的数组