Javascript 检查对象数据是否与我的id值匹配,然后加载内部对象
如何循环遍历对象并检查名称是否与_id相同,然后加载内部对象Javascript 检查对象数据是否与我的id值匹配,然后加载内部对象,javascript,Javascript,如何循环遍历对象并检查名称是否与_id相同,然后加载内部对象 我想检查obj对象是否与我的id名称和循环匹配 在我检查它是否具有相同的名称之后,然后加载内部对象样式 这是我试过的,但什么也没得到 var _id = "displayImage1" my object var obj = { displayImage1: { object: "style"; }, displayImage2: { object: "style";
obj
对象是否与我的id名称和循环匹配var _id = "displayImage1"
my object
var obj = {
displayImage1: {
object: "style";
},
displayImage2: {
object: "style";
},
displayImage3: {
object: "style";
}
}
编辑
您可以检查该键是否存在,然后将该值作为样式应用:
for (var i in obj) {
if(obj[i] === _id){
console.log(obj[i]['object']);
}
}
将\u id与json属性进行比较,不要比较孔对象 试试这个代码
var\u id=“displayImage1”;
//我的目标
var json={
显示图像1:{
对象:“样式”
},
显示图像2:{
对象:“样式”
},
显示图像3:{
对象:“样式”
}
}
for(json中的var i){
如果(i==\u id){
log(json[i]['object']);
}
}
您正在检查键i
处的值是否等于您要查找的id。相反,您要检查键本身是否相等,对吗
if (json[_id]) {
element.style = json[_id].object;
} else {//does not exist}
但你根本不需要循环。对象的全部意义在于,您可以通过简单地提供键来检索它们的值:
if (i === _id) {
然后通过指定其键从中选择一个值:
obj[_id]
顺便说一下,这个问题与“JSON”无关。JSON是一种用于交换信息的序列化形式。您正在处理的对象是普通的旧JavaScript对象。使用
json[\u id]
或console.log(json[\u id].object)直接访问属性。
?
obj[_id].object