如何使用 .some() 查找对象数组是否包含特定的 属性 值
How can I use .some() to find if an array of objects contains a specific property value
我有一个包含对象的数组,其中每个对象代表一个要去视频剧院的人。
这些对象包含姓名、年龄和爱好等属性。
如果(至少)有一个人未满 18 岁,则变量 censor 应设置为 true。
尽管 Tim 未满 18 岁,但我下面的代码产生了 false 值。
无法以这种方式使用 .some() 还是我做错了什么?
var persons = [
{Name: "Joel", Age:25, Hobby:"Fishing"},
{Name: "Michael", Age:31, Hobby:"Astronomy"},
{Name: "Tim", Age:12, Hobby:"Video Games"},
]
var censor = persons.some((person) => {person.Age < 18})
console.log(censor) --> false
是
var censor = persons.some((person) => person.Age < 18); // <-- no curly brackets for the predicate
而不是{person.Age < 18}
您需要删除括号。
var persons = [
{Name: "Joel", Age:25, Hobby:"Fishing"},
{Name: "Michael", Age:31, Hobby:"Astronomy"},
{Name: "Tim", Age:12, Hobby:"Video Games"},
]
var censor = persons.some((person) => person.Age < 18)
console.log(censor)
如果你想继续使用括号,那么你需要在语句中添加return
:
var censor = persons.some((person) => {
return person.Age < 18
})
您的回调中缺少 return,这就是为什么它总是 false
、
要么使用:
var censor = persons.some(person => person.Age < 18)
或
var censor = persons.some(person => {return person.Age < 18 })
我有一个包含对象的数组,其中每个对象代表一个要去视频剧院的人。 这些对象包含姓名、年龄和爱好等属性。 如果(至少)有一个人未满 18 岁,则变量 censor 应设置为 true。
尽管 Tim 未满 18 岁,但我下面的代码产生了 false 值。 无法以这种方式使用 .some() 还是我做错了什么?
var persons = [
{Name: "Joel", Age:25, Hobby:"Fishing"},
{Name: "Michael", Age:31, Hobby:"Astronomy"},
{Name: "Tim", Age:12, Hobby:"Video Games"},
]
var censor = persons.some((person) => {person.Age < 18})
console.log(censor) --> false
是
var censor = persons.some((person) => person.Age < 18); // <-- no curly brackets for the predicate
而不是{person.Age < 18}
您需要删除括号。
var persons = [
{Name: "Joel", Age:25, Hobby:"Fishing"},
{Name: "Michael", Age:31, Hobby:"Astronomy"},
{Name: "Tim", Age:12, Hobby:"Video Games"},
]
var censor = persons.some((person) => person.Age < 18)
console.log(censor)
如果你想继续使用括号,那么你需要在语句中添加return
:
var censor = persons.some((person) => {
return person.Age < 18
})
您的回调中缺少 return,这就是为什么它总是 false
、
要么使用:
var censor = persons.some(person => person.Age < 18)
或
var censor = persons.some(person => {return person.Age < 18 })