[英]how to get the element from array
我有一个数组,它是
myArr = [ { "root": ["1", "6"], "element": "Apple" }, { "root": ["2", "7"], "element": "Banana" }, { "root": ["3", "8"], "element": "Orange" }, { "root": ["4", "9"], "element": "WaterMelon" }, { "root": ["5"], "element": "Kiwi" } ]
只是想知道我是否有一个与上面的根数组之一匹配的 '3' 字符串,我想从上面的数组中获取元素,我应该如何在 javascript 中做到这一点? 有什么帮助吗? 谢谢
你可以这样过滤你的数组+ destructing
你的根以检查它是否包含“3”:
const s = "3" const myArr = [{ "root": ["1", "6"], "element": "Apple" }, { "root": ["2", "7"], "element": "Banana" }, { "root": ["3", "8"], "element": "Orange" }, { "root": ["4", "9"], "element": "WaterMelon" }, { "root": ["5"], "element": "Kiwi" }]; const res = myArr.filter(({ root }) => root.includes(s)) console.log(res)
只需过滤数组即可获取元素:
const myArr = [ { "root": ["1", "6"], "element": "Apple" }, { "root": ["2", "7"], "element": "Banana" }, { "root": ["3", "8"], "element": "Orange" }, { "root": ["4", "9"], "element": "WaterMelon" }, { "root": ["5"], "element": "Kiwi" } ]; const ele = myArr.filter(arr => arr.root.includes("3")); console.log("Required", ele);
我希望这能让你开始:
myArr.forEach((x)=>{
x.root.forEach((j)=> {
if(j=='3'){console.log( x.element);}
})
})
迭代主数组,然后为每个元素迭代“根”数组。 如果匹配'3',则返回主项的元素字段
const myArr = [
{
root: ["1", "6"],
element: "Apple"
},
{
root: ["2", "7"],
element: "Banana"
},
{
root: ["3", "8"],
element: "Orange"
},
{
root: ["4", "9"],
element: "WaterMelon"
},
{
root: ["5"],
element: "Kiwi"
}
];
const stringToFind = "3";
const elemList = myArr
.filter(obj => obj.root.includes(stringToFind))
.map(obj => obj.element);
console.log(elemList);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.