gpt4 book ai didi

javascript - 嵌套 JavaScript every & some

转载 作者:行者123 更新时间:2023-11-29 16:07:01 24 4
gpt4 key购买 nike

我想弄清楚为什么会返回 false:

var goodUsers = [
{ id: 1 },
{ id: 2 },
{ id: 3 },
];

var testUsers = [
{ id: 1 },
{ id: 2 },
{ id: 3 }
];

console.log(testUsers.every(testUser => {
goodUsers.some(goodUser => {
testUser.id === goodUser.id
})
}));

我认为我的问题在于如何将 some 嵌套在 every 中。任何帮助,将不胜感激。谢谢!

最佳答案

您对 .some.every 的回调实际上没有返回任何东西。这就是您得到 false 的原因。

var goodUsers = [
{ id: 1 },
{ id: 2 },
{ id: 3 },
];

var testUsers = [
{ id: 1 },
{ id: 2 },
{ id: 3 }
];

console.log(testUsers.every(testUser => {
return goodUsers.some(goodUser => {
return testUser.id === goodUser.id
});
}));

做之间有区别:

goodUser => testUser.id === goodUser.id

goodUser => { testUser.id === goodUser.id; }

第一个 - 没有 {} - 有一个隐式 返回。它返回表达式的值。这和做的一样:

goodUser => { return testUser.id === goodUser.id; }

您使用的是 {},它启动了一个语句 block ,并省略了 return 语句。

文档:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions

关于javascript - 嵌套 JavaScript every & some,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38854086/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com