【发布时间】:2020-05-04 22:00:38
【问题描述】:
我正在为一个项目使用 openweather api,并且数据会根据您查看它的时间而波动。因此,我试图遍历前 8 个对象以找到 dt_txt = 到 12:00:00。我需要将结果分配给一个 var,这样我就可以将它增加 8。
这是数据的来源(仅限第一个索引):
0:
dt: 1579316400
main: {temp: 271.29, feels_like: 259.49, temp_min: 271.29, temp_max: 272.35, pressure: 1026, …}
weather: [{…}]
clouds: {all: 100}
wind: {speed: 13.55, deg: 147}
snow: {3h: 5}
sys: {pod: "n"}
dt_txt: "2020-01-18 03:00:00"
__proto__: Object
我的尝试:
for (let i = 0; i < 8; i++) {
if ((response.list[i].dt_txt).substring(11) === "12:00:00") {
var noon = indexOf("12:00:00")
console.log(noon);
提前致谢!
编辑 我以为我遗漏了一些明显的东西!
工作代码:
for (let i = 0; i < 8; i++) {
if ((response.list[i].dt_txt).substring(11) === "12:00:00") {
var noon = response.list[i]
console.log(noon);
var noon2 = response.list[i + 8]
console.log(noon2);
【问题讨论】:
-
如果您只需要知道在
response.list的哪个索引处找到dt_txt值与12:00:00匹配的对象,为什么不直接使用循环计数器变量i?此外,这是错误的 -var noon = indexOf("12:00:00")。indexOf适用于数组或字符串对象。 -
谢谢 Manish Giri,你是对的,我很傻!
标签: javascript arrays object for-loop indexing