javascript 原型对象的问题
a 和 b两个变量都赋值为Person的原型
为什么,他们会不相等?不是同一个Person?
function Person(){}
var a = Person.prototype;
var p = new Person();
var b = Person.prototype;
alert(a == b)//false
追问:好吧,是true ...
其实,我的问题是这个:
为什么name还是undefined ,
function Person(){}
var person = new Person();
Person.prototype =
{
name : "123"
}
alert(person.name);都是Person的实例,是同一个Person啊..
答案:我运行代码的结果是true,因为我觉得应该是true,请你再运行一遍代码吧。
其他:不是同一个person,属性方法会一样吗?为什么会相等。 会不一样么???
你是不是写错了。
var a = Person.prototype;
var p = new Person();
var b = Person.prototype;
a 和 b 这两句话是一样的啊。当然 a==b 为true的。
如果你本来是想写成这样的话:
var a = Person.prototype;
var p = new Person();
var b = p.prototype;
一个是函数的原型,一个是对象的原型,都不是同一个东西的原型,当然不一样。
你是个初学者哦
上一个:我的世界JAVA为什么安装不了
下一个:linux中basedir和homedir的区别是什么?