js判断数组的值/对象数组的属性值是否相同every()、some()

您所在的位置:网站首页 js判断是否是对象和数组 js判断数组的值/对象数组的属性值是否相同every()、some()

js判断数组的值/对象数组的属性值是否相同every()、some()

2024-07-12 18:47| 来源: 网络整理| 查看: 265

一、some():用于检测数组中的元素是否满足指定条件

some方法会依次执行数组的每个元素;

如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测如果没有满足条件的元素,则返回false

二、every():用于检测数组所有元素是否都符合指定条件

every和some正好相反:

如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回 true。

1、判断数组:

var arr = [0,0,0,7]; //判断数组中的每一项是否都等于7 var everyResult = arr.every( item => item === 7 ); //判断数组中的一项是否等于7 var someResult = arr.some( item => item === 7 ); console.log(everyResult ); //结果:false console.log(someResult );//结果: true

2、判断对象数组:

var arr = [ { name: "苹果", price: 16 }, { name: "橘子", price: 8 }, { name: "香蕉", price: 4 }, { name: "西瓜", price: 12 } ]; //判断数组中每一条数据的price是否都大于10 var everyResult = arr.every(function(item) { return item.price > 10; }); //判断数组中是否有一条数据的price大于10 var someResult = arr.some(function(item) { return item.price > 10; }); console.log(everyResult); //结果:false console.log(someResult);//结果: true

以上判断条件是知道具体值的,但我想判断数组的值是否相同:

function isAllEqual(array) { if (array.length > 0) { return !array.some(function(value, index) { return value !== array[0]; }); } else { return true; } } var arr = [0, 0 , 1 , 7]; isAllEqual(arr); //false var arr = [0, 0 , 0 , 0]; isAllEqual(arr); //true

ES6中Set使用,判断数组里是否有相同的元素:https://blog.csdn.net/qq_40015157/article/details/117929652

 

 我想判断每条数据里的属性值是否相同:

var arr = [ { name: "苹果", price: 16 }, { name: "橘子", price: 8 }, { name: "香蕉", price: 4 }, { name: "西瓜", price: 12 } ]; var list = []; for(let i = 0;i< arr.length;i++) { list.push(arr[i].price) } console.log(isAllEqual(list)); //false var arr = [ { name: "苹果", price: 16 }, { name: "橘子", price: 16 }, { name: "香蕉", price: 16 }, { name: "西瓜", price: 16 } ]; //修改下数组 打印true

三、js JSON.stringify 比较两个对象数组是否相同

https://blog.csdn.net/qq_40015157/article/details/112790147

四、js 比较两个数组是否相同

https://blog.csdn.net/qq_40015157/article/details/110792580



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3