Javascript 迭代对象并查找编号的键
我有一个对象看起来像:Javascript 迭代对象并查找编号的键,javascript,key,Javascript,Key,我有一个对象看起来像: var myObj = { some : {}, stuff : 123, in : { here : { variables : 'stuffety stuff', variables : 'stuffety stuff', variables : 'stuffety stuff', variables : 'stuffety stuff', image1 : 'img1.jpg',
var myObj = {
some : {},
stuff : 123,
in : {
here : {
variables : 'stuffety stuff',
variables : 'stuffety stuff',
variables : 'stuffety stuff',
variables : 'stuffety stuff',
image1 : 'img1.jpg',
image2 : 'img2.jpg',
image3 : 'img3.jpg',
imageN : 'imgN.jpg',
...
variables : 'stuffety stuff',
variables : 'stuffety stuff',
}
}
}
其中N可以是任意给定的数字。我正在尝试获取所有包含“image”的键,并将其放入数组中。因此,结果应该如下所示:
图像['img1.jpg'、'img2.jpg'、'img3.jpg'、'imgN.jpg'…]
在不知道有多少钥匙的情况下,我如何找到这些编号的钥匙。它们也可以是无序的。(例如,缺少图像2)您可以使用对象方法
Object.keys()
获取对象中的键
Object.keys(myObj.in.here)
上面的代码将为您提供预期的结果。下面是一个使用
for
循环的简单解决方案。有关原始代码,请参见
var extracted = [];
for (var p in myObj.xin.here) {
if (myObj.xin.here.hasOwnProperty(p) && p.indexOf("image") > -1) {
extracted.push(p);
}
}
你来这里是因为你想让我们为你实现它?或多或少。我正在寻找一个优雅的实现。嗯,这是一个帮助开发者不免费完成工作的社区。有什么问题吗?我不知道怎么拿到这些钥匙。我不打算用这段代码来付房租,所以我要问一个特别的问题。将您的任务拆分为子任务,并逐个解决它们。1) 获取所有关键点2)查找与模式3)匹配的所有关键点3)使用#2中的关键点从原始对象检索数据。这些是基本步骤。很抱歉,我编辑了这个问题。这些图像位于许多其他键之间,将其写入一个函数,您可以传入任何想要的参数。