hasOwnProperty在For in循环中总是返回False
hasOwnProperty Always Returning False in For In Loop
我有以下
var firstObject = {
firstName: "James",
lastName: "Smith",
nationality: "American",
age: 12,
get_age: function(){
return this.age;
}
}
var secondObject = {
state: "oregon",
city: "portland"
}
secondObject.__proto__ = firstObject;
for(var i in secondObject){
if(secondObject.hasOwnProperty[i]){
console.log(secondObject[i]);
}
else{
console.log("not my own property: " + secondObject[i]);
}
}
secondObject从firstObject扩展而来。在For In循环中,州和城市应该根据第一个if条件进行分类,而其他一切都应该根据else条件进行分类。当我运行上面的代码时,我的所有属性/函数都会根据else条件进行分类。为什么hasOwnProperty方法在所有属性上都返回false?
.hasOwnProperty[i] (not a property)
应该是
.hasOwnProperty(i) (It is a method)
您应该使用括号而不是方括号
相关文章:
- Array.every返回false,而不是类型error
- Javascript If else 只返回 TRUE 或只返回 FALSE
- 为什么当我在数组上测试regex时,它会返回false
- 检查文本区域是否为空总是返回false
- PHP strtotime()为JavaScript日期字符串返回false
- onsubmit返回false,但submit仍然执行
- 这个代码会返回false吗
- Ajax向表单返回false
- 表单验证JavaScript编号总是返回false
- 使用!而in运算符在应该为true时返回false,为什么
- jQuery.is(':checked')总是返回false
- Javascript 下划线每个总是返回 false
- 提交返回 false 总是在 jquery 中
- 为什么 1.2 == true 返回 false 如果布尔值 (1.2) 实际上是真的
- 如果循环中至少有一个元素返回 false,如何将变量设置为 false
- 基本JavaScript不断返回false
- 布尔对象上的逻辑 NOT 在 Javascript 中总是返回 false
- jquery focusin没有'调用.focus()并返回false;时无效;
- Ajax-执行成功前返回false
- jQuery JSON flickr提要返回false不工作