javascript:';返回';被忽略并继续循环
我首先对注释的值进行散列,然后在magazineAr中进行检查,以查看注释的每个单词是否都包含在杂志中。如果注释单词在散列中不存在,那么我将返回“否”。但是,我在控制台中不断得到一个返回“是”。javascript:';返回';被忽略并继续循环,javascript,Javascript,我首先对注释的值进行散列,然后在magazineAr中进行检查,以查看注释的每个单词是否都包含在杂志中。如果注释单词在散列中不存在,那么我将返回“否”。但是,我在控制台中不断得到一个返回“是”。 我在调试器模式下观察过它,我看到它进入语句,在语句中点击“return No”,但它只是继续执行forEach循环。我甚至尝试过return false,但同样的事情。AforEach回调忽略返回的值-无论它是什么,数组中的每个项都将用t调用他是forEach。对于您尝试执行的操作,您可能应该改用eac
我在调试器模式下观察过它,我看到它进入语句,在语句中点击“return No”,但它只是继续执行forEach循环。我甚至尝试过
return false
,但同样的事情。AforEach
回调忽略返回的值-无论它是什么,数组中的每个项都将用t调用他是forEach
。对于您尝试执行的操作,您可能应该改用each
,它检查数组中的所有项是否满足以下条件:
function checkMagazine(magazine, note) {
var map = new Map();
var noteAr = note.split(" ");
var magazineAr = magazine.split(" ")
noteAr.forEach((note) => {
if (map.has(note)) {
map.set(note, map.get(note) + 1)
} else {
map.set(note)
}
});
magazineAr.forEach((word) => {
if (!map.has(word)) {
return "No"
}
});
return "Yes"
}
forEach
回调忽略返回的值-无论它是什么,数组中的每个项都将被forEach
调用。对于您尝试执行的操作,您可能应该改用every
,它检查数组中的所有项是否满足条件:
function checkMagazine(magazine, note) {
var map = new Map();
var noteAr = note.split(" ");
var magazineAr = magazine.split(" ")
noteAr.forEach((note) => {
if (map.has(note)) {
map.set(note, map.get(note) + 1)
} else {
map.set(note)
}
});
magazineAr.forEach((word) => {
if (!map.has(word)) {
return "No"
}
});
return "Yes"
}