gpt4 book ai didi

javascript - 为什么过滤器没有给出与使用 for..of 迭代推送相同的结果?

转载 作者:行者123 更新时间:2023-12-01 02:35:00 25 4
gpt4 key购买 nike

我从以下原始数据中提取了一个对象数组:https://gist.githubusercontent.com/Miserlou/c5cd8364bf9b2420bb29/raw/2bf258763cdddd704f8ffd3ea9a3e81d25e2c6f6/cities.json

可以说,数据看起来像这样:

[0 … 99]0:城市:“纽约”2000年至2013年的增长:“4.8%”纬度:40.7127837经度:-74.0059413人口:“8405837”秩:“1”状态:“纽约”原型(prototype):目的1:{城市:“洛杉矶”,growth_from_2000_to_2013:“4.8%”,纬度:34.0522342,经度:-118.2436849,人口:“3884307”,…}

我已将其存储为 const JSON_LOCS,在下面的代码中引用。

我正在尝试过滤此内容,寻找包含某些特定测试的城市。我用两种不同的方式来处理它。一种方法似乎有效,但 Array.prototype.filter() 无效。

const test = [];
for (let t of JSON_LOCS) {
if (t.city.includes('las')) {
test.push(t);
}
}

const test2 = JSON_LOCS.filter(loc => { // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/filter
loc.city.includes('las');
});
console.log(test); // Yields a couple of results
console.log(test2); // Always empty! :(

最佳答案

代替这一行

oc.city.includes('las');

写下这一行

return oc.city.includes('las');

您只是忘记了 return 语句,在这种情况下将返回未定义

关于javascript - 为什么过滤器没有给出与使用 for..of 迭代推送相同的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47993978/

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