在JavaScript中定义一个函数(也称对象)
function Person(name, age){
this.name=name;
this.age=age;
}
var person = new Person("ss" , 12);
现在如果想为对象添加一个setName方法:该怎么办呢??
若使用person.setName = function( name ){
this.name = name ;
}
则只有这个对象可以调用此方法
person.setName( " DD");
alert(person.name); //name的 值为DD
但是如果再创建个对象
var person2 = new Person("AA", 24);
则依旧没有setName这个方法,如果想要所有通过new Person();创建的对象都有setName这个方法的话,则可以使用prototype这个属性,如下:
Person.prototype = {
sex:"男",
setName: function( name) {
this .name = name;
}
}
可以测试一下:
person2.setName("gg");
alert(person2.name); //结果为gg
alert(person2.sex);//男