gpt4 book ai didi

javascript - 如何通过搜索文本返回 JSON 数组中项目的索引位置?

转载 作者:行者123 更新时间:2023-11-29 16:06:46 26 4
gpt4 key购买 nike

这是我的 JSON 数组:

var planets = [{
"Name": "Mercury",
"Temperature": "427°C",
"Position" : 1
}, {
"Name": "Venus",
"Temperature": "462°C",
"Position" : 2

}, {
"Name": "Earth",
"Temperature": "16°C",
"Position" : 3
}]

使用文本“Earth”是否有一种方法可以返回项目 Earth 在我的 Planets 数组中的索引位置?

例如:

planets.find("Earth")

最佳答案

普通 JS:findIndex

The findIndex() method returns an index in the array, if an element in the array satisfies the provided testing function. Otherwise -1 is returned.

[{
"Name": "Mercury",
"Temperature": "427°C",
"Position" : 1
}, {
"Name": "Venus",
"Temperature": "462°C",
"Position" : 2

}, {
"Name": "Earth",
"Temperature": "16°C",
"Position" : 3
}].findIndex(x => x.Name === "Earth")

如果您使用的是 IE 9+,则可以使用 reduce function

The reduce() method applies a function against an accumulator and each value of the array (from left-to-right) to reduce it to a single value.

[{
"Name": "Mercury",
"Temperature": "427°C",
"Position" : 1
}, {
"Name": "Venus",
"Temperature": "462°C",
"Position" : 2

}, {
"Name": "Earth",
"Temperature": "16°C",
"Position" : 3
}].reduce(function (foundSoFar, x, i) { // Note no arrow funcion
if (foundSoFar < 0 && x.Name === "Earth") {
return i;
} else {
return foundSoFar;
}
}, -1);

或者,使用库的实现,如 ramda

关于javascript - 如何通过搜索文本返回 JSON 数组中项目的索引位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39470290/

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