javascript - 检查数组中的对象是否包含相等的属性
问题描述
我有一个对象数组,每个对象都有不同的属性。我想检查一个特定属性是否在所有对象中都相等。例如
peopleArr = [
{
name: Simon,
age: 22,
hair: brown
},
{
name: John,
age: 22,
hair: black
},
{
name: James,
age: 22,
hair: blond
}
]
我需要一个函数,如果age
在数组中的所有对象中具有相同的值,则返回 true,否则返回 false。我尝试了一些使用 .every 的变体,但无法让它专门用于对象属性(我比较新)。任何帮助表示赞赏。
解决方案
您可以使用数组every方法并在回调age
中检查所有对象是否等于 22。它将返回布尔值,如果所有对象都符合条件,它将返回 true
const peopleArr = [{
name: 'Simon',
age: 22,
hair: 'brown'
},
{
name: 'John',
age: 22,
hair: 'black'
},
{
name: 'James',
age: 23,
hair: 'blond'
}
]
const res = peopleArr.every(item => item.age === 22);
console.log(res)
推荐阅读
- angular - Angular 7 中注入服务与单例服务的内存和性能比较
- vb.net - 用数据集填充组合框
- java - 如何使用 java servlet 输出 SQL 查询的结果
- nsis - 我想知道如何使用 NSIS 从 C++ 可执行文件中调用函数
- sql-server - sql server中的复合主键
- android - 尝试设置 chaquopy 时出现错误(错误显示:启动失败(org.gradle.process.internal.ExecException)
- r - 我正在定义的函数的“错误:意外符号”,但我无法确定错误的来源
- python - TensorFlow Python 3.7
- python - pytorch:无法理解 model.forward 函数
- php - 上传时重命名PDF PHP