如何遍历嵌套对象中的data1/data2/data3并验证数据匹配情况?
实现方案
你可以通过以下两种常见方式实现需求:
方法1:使用Object.values()结合forEach遍历
Object.values()可以直接提取api对象的所有子对象组成数组,再通过forEach逐个验证:
const input = "aman" const api = { data1 : { name : "aman", age : 22 }, data2 : { name : "anuj", age : 20 }, data3 : { name : "rahul", age : 22 }, } Object.values(api).forEach(item => { if (item.name === input) { console.log('matched') } else { console.log("didn't matched") } })
方法2:使用for...in循环遍历对象键
通过遍历api的属性键,逐个访问子对象并验证:
const input = "aman" const api = { data1 : { name : "aman", age : 22 }, data2 : { name : "anuj", age : 20 }, data3 : { name : "rahul", age : 22 }, } for (const key in api) { // 过滤原型链属性,确保只处理自身的data1/data2/data3 if (api.hasOwnProperty(key)) { const item = api[key] console.log(item.name === input ? 'matched' : "didn't matched") } }
两种方法都会输出:
matched didn't matched didn't matched
内容的提问来源于stack exchange,提问作者Aman Sharma
相关产品推荐
相关产品推荐

