使用hasOwnProperty()发现和书上的输出值不一样

function Person(){}
		Person.prototype.name = "Jim";
		Person.prototype.age = 29;
		Person.prototype.job = "Doctor";
		Person.prototype.sayName = function(){
			alert(this.name);
		};
		var person1 = new Person();
		alert(person1.hasOwnProperty(name));  //false
		person1.name = "Han";
		alert(person1.name);
		alert(person1.hasOwnProperty(name));  //false

使用hasOwnProperty()方法可以检测一个属性是存在于实例中,还是存在于原型中,person1.name == "Han",相当于给实例添加了一个属性name,屏蔽了原型中的name,为什么

alert(person1.hasOwnProperty(name))的输出值是false呢


好学的Lv
浏览 1310回答 3
3回答

无状态三次方

兄弟,你name是不是少了引号啊

wblovezqy

hasOwnProperty('name')      方法里是string 不是变量
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript