gpt4 book ai didi

Javascript过滤器检查多个值?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:01:11 25 4
gpt4 key购买 nike

我想知道如何从这样的数组中返回多个值:

var countries = [
{ key: "Spain", doc_count: 1378 },
{ key: "Greece", doc_count: 1259 }
];

这是我到目前为止所设置的,它可以很好地返回单个值。我想知道如何通过一系列国家而不是寻找一个国家。

var countriesFound = countries.filter(function(country) {
return country.key === 'Spain';
});

关于这一点,我还想将找到的对象添加到数组的前面,这样我就可以在我的国家/地区数组中拥有它的副本。

使用它会导致一些意想不到的结果,因为我最终得到一个数组作为国家/地区数组中的第一个项目,而我想要的对象存储在该数组中。

countries.unshift(countriesFound);

结果(至少我认为它看起来像这样输入):

var countries = [
[{ key: "Spain", doc_count: 1378 }],
{ key: "Spain", doc_count: 1378 },
{ key: "Greece", doc_count: 1259 }
];

最佳答案

将过滤器更改为:

var countriesFound = countries.filter(function(country) {
return ["Spain","Greece"].indexOf(country.key) != -1
});

["Spain","Greece"] 是您要过滤的有效国家列表。从应用于数组的过滤函数返回的值决定了元素是被过滤掉还是被过滤掉。 indexOf 找到给定 country.key

在给定数组中的位置

根据将过滤后的数组添加到另一个数组的开头,你是正确的,在前面的代码之后执行 countries.unshift(countriesFound) 将实现这一点。

关于Javascript过滤器检查多个值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37807783/

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