如何在对象的原型中搜索键?
How to search for a key in an object's prototype?
我有一个对象,里面有这样的对象:
obj = {
foo:{x},
bar:{y},
}
我想在子对象原型中搜索键,即在此上下文中的 bar
到目前为止我已经试过了,但没有成功
for(x in obj){
if(Object.keys(x.prototype).includes("key_to_be_searched")){
console.log("true")
}
}
偶数记录 x.prototype returns 空数组
我是新手,所以我非常感谢深入的解释或资源,我可以在其中了解更多关于原型的信息。
obj = {
foo:{x},
bar:{y},
}
这不是您在原型内部声明任何内容的方式,属性直接存在于对象内部而不是其原型内部
而不是 x.prototype 只做 x
你可以递归检查:
const obj = {
foo: { x: 'x' },
bar: { y: 'y' },
}
const checkObjectProp = (o, p) => Object
.keys(o)
.some(k => k === p || (typeof o[k] === 'object' && checkObjectProp(o[k], p)))
// Test
const arr = ['foo', 'y', 'asdfasdf']
arr.forEach(p => console.log(checkObjectProp(obj, p)))
我有一个对象,里面有这样的对象:
obj = {
foo:{x},
bar:{y},
}
我想在子对象原型中搜索键,即在此上下文中的 bar
到目前为止我已经试过了,但没有成功
for(x in obj){
if(Object.keys(x.prototype).includes("key_to_be_searched")){
console.log("true")
}
}
偶数记录 x.prototype returns 空数组
我是新手,所以我非常感谢深入的解释或资源,我可以在其中了解更多关于原型的信息。
obj = {
foo:{x},
bar:{y},
}
这不是您在原型内部声明任何内容的方式,属性直接存在于对象内部而不是其原型内部
而不是 x.prototype 只做 x
你可以递归检查:
const obj = {
foo: { x: 'x' },
bar: { y: 'y' },
}
const checkObjectProp = (o, p) => Object
.keys(o)
.some(k => k === p || (typeof o[k] === 'object' && checkObjectProp(o[k], p)))
// Test
const arr = ['foo', 'y', 'asdfasdf']
arr.forEach(p => console.log(checkObjectProp(obj, p)))