Javascript 检查属性中是否存在对象
我正在尝试查看该属性是否包含其他对象 我有这个:Javascript 检查属性中是否存在对象,javascript,jquery,Javascript,Jquery,我正在尝试查看该属性是否包含其他对象 我有这个: { "prop1": "value", "prop2": "value", "prop4": "value", "prop5": { "innerprop1": "value", "innerprop2": "value" }, "prop6": { "innerprop3": "value", "innerprop4": "value" } } 我想知道这些属性中是否
{
"prop1": "value",
"prop2": "value",
"prop4": "value",
"prop5": {
"innerprop1": "value",
"innerprop2": "value"
},
"prop6": {
"innerprop3": "value",
"innerprop4": "value"
}
}
我想知道这些属性中是否有对象
任何帮助都将不胜感激。
var对象={
“prop1”:“价值”,
“prop2”:“价值”,
“prop4”:“价值”,
“建议5”:{
“innerprop1”:“值”,
“innerprop2”:“值”
},
“建议6”:{
“innerprop3”:“值”,
“innerprop4”:“值”
}
}
if(yourObject.prop5的类型=='object'){
log(“它是对象”)
}
尝试使用方法和
Object.values
为值创建数组,并使用条件typeof(a)==“Object”
var arr={“prop1”:“value”,“prop2”:“value”,“prop4”:“value”,“prop5”:{“innerprop1”:“value”,“innerprop2”:“value”},“prop6”:{“innerprop3”:“value”,“innerprop4”:“value”}
//返回键名
console.log(Object.keys(arr.filter)(a=>typeof(arr[a])=='Object'))
var res=对象值(arr).map(函数(a){
返回类型(a)=“对象”
})
console.log(res)
您可以使用typeof
函数,该函数将返回对象的object
var json = '{ "prop1": "value", "prop2": "value", "prop4": "value", "prop5": { "innerprop1": "value", "innerprop2": "value" }, "prop6": { "innerprop3": "value", "innerprop4": "value" } }';
jsonObject = JSON.parse(json);
var keys = Object.keys(jsonObject);
keys.forEach(function(element){
console.log(typeof(jsonObject[element]));
})
请核对第七项
obj={
“prop1”:“价值”,
“prop2”:“价值”,
“prop4”:“价值”,
“建议5”:{
“innerprop1”:“值”,
“innerprop2”:“值”
},
“建议6”:{
“innerprop3”:“值”,
“innerprop4”:“值”
},
“prop7”:[]//也是一个对象!
}
for(obj中的var键){
如果(对象的类型[键]=“对象”){
console.log(键)
}
}
obj[property].Constructor==Object起作用