这是一个数组中的一个元素,包含大约50个其他元素。
var fiftyplanets = [{
"rowid": 1,
"Host name": "HD 224693",
"Planet Mass or M*sin(i)[Jupiter mass]": 0.71,
"Planet Radius [Jupiter radii]": 12.1,
"Distance [pc]": 94.07
}, ...]
我有5个变量range1到range5,它将数组过滤成五个部分,每个10个元素如下:
var range = (array, start, end) =>
fiftyplanets.filter((element, index)=>index>=start && index <= end);
var range1 = range([fiftyplanets],0,9);
最后,在用户输入时,此应该在用户看到的并且单击“主机名”的元素之间切换应该是要检索的元素。
if (value == range1[4]["Host name"]) {
var name = range1[4]["Host name"];
var dist = range1[4]["Distance [pc]"];
var mass = range1[4]["Planet Mass or M*sin(i)[Jupiter mass]"];
var radi = range1[4]["Planet Radius [Jupiter radii]"];
}
我可以制作49个其他if语句但是如何修改代码,以便value
检查范围内所有具有相同“”主机名“的元素,然后检索其他信息,如dist和群众有关吗?
答案 0 :(得分:0)
只是获得数组的一部分的答案
而不是这个函数表达式
var range = (array, start, end) => fiftyplanets.filter((element, index) => index >= start && index <= end);
您可以使用Array#slice
获取数组部分的副本
var range = (array, start, end) => array.slice(start, end + 1);