Javascript 查找包含给定字符串的对象属性
我知道,如果我知道某个对象的名称,我可以遍历该对象并找到给定的属性。如果我想找到object.foo,我可以使用object['foo'] 假设我无法控制数据的结构方式,大约有100个属性,我只需要提取以字符串“ninja”开头的所有属性,但我不知道这些属性的全名。object.ninjaSword、object.ninjaStar、object.ninjaFavoriteFood等Javascript 查找包含给定字符串的对象属性,javascript,object,properties,Javascript,Object,Properties,我知道,如果我知道某个对象的名称,我可以遍历该对象并找到给定的属性。如果我想找到object.foo,我可以使用object['foo'] 假设我无法控制数据的结构方式,大约有100个属性,我只需要提取以字符串“ninja”开头的所有属性,但我不知道这些属性的全名。object.ninjaSword、object.ninjaStar、object.ninjaFavoriteFood等 如何提取以“忍者”开头的属性?提前感谢,如果我在搜索过程中错过了答案,我会提前道歉/ 您需要遍历所有属性,并筛选
如何提取以“忍者”开头的属性?提前感谢,如果我在搜索过程中错过了答案,我会提前道歉/ 您需要遍历所有属性,并筛选符合您需求的属性 例如:
// iterate over all properties
for (var name in obj) {
// check if the name starts with 'ninja'
if (name.indexOf('ninja') === 0) {
// found a property that starts with 'ninja', so log the property
// name, and the respective value
console.log(name, obj[name]);
}
}
对象
类型还有一个名为的方法,该方法将返回对象的所有属性名的数组。然后,您可以这样做,以再次获得与您的需求匹配的所有属性。然后你可以循环这些,也可以得到属性值。Object.keys(Object.filter(function(prop){return prop.indexOf('ninja')==0})谢谢你的快速帮助和清晰的答案!