【发布时间】:2021-08-25 18:54:43
【问题描述】:
我是 Javascript 新手,遇到了一些问题。我正在尝试将 Array 单词与 Array 天数进行比较。如果 Array words 中的 word 不等于 中的 day数组天,单词会被推送到name Array。我尝试使用下面的脚本,但它给了我不同的答案。
我希望仅从单词数组中获取名称 (Joe Smith),如果有的话,我会排除这一天。
function newFunction () {
var days = new Array("Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday");
var words = new Array("Joe", "Smith", "Tuesday");
var name = new Array();
var day = "";
for (x in words) {
for (y in days) {
if (words[x] == days[x]) {
day = days[x];
} else {
name.push(words[x]);
};
};
return name;
}
当我运行脚本时,我得到了这个结果。
结果 乔,乔,乔,乔,乔,乔,乔,史密斯,史密斯,史密斯,史密斯,史密斯,史密斯,史密斯,星期二,星期二,星期二
【问题讨论】:
-
改用
words.filter(v => !days.includes(v))
标签: javascript arrays if-statement conditional-statements