如何向现有对象添加方法?

时间:2016-09-09 21:10:23

标签: javascript

var Person = function(name, age) {
  this.name = name;
  this.age = age;
};



//Now create three instances of Person with data you make up

var p1 = new Person('Aaron', 32);
var p2 = new Person('Casey', 30);
var p3 = new Person('Greg',31);



//Now add a sayName method on your Person class that will alert the name of whatever Person instance called it.

我不确定如何将方法添加到现有类中。我是JavaScript的新手。我知道如何添加新属性而不是新功能。

4 个答案:

答案 0 :(得分:0)

将方法添加到Person原型链。

Person.prototype.sysName = function() {
    return console.log(this.name);
};

答案 1 :(得分:0)

实现此目的的一种方法是使用原型设计,您可以通过执行以下操作向对象添加方法:myObject.prototype.myMethod = function(){ ... }

Person.prototype.sayName = function(){
    console.log(this.name);
}

另一种方法是直接在Person的创建时添加它,只需注意在这种情况下每个实例的方法都是重复的:

var Person = function(name, age) {
  this.name = name;
  this.age = age;

  this.sayName = function() {
      console.log(this.name);
  }
};

答案 2 :(得分:0)

Person.prototype.sayName = function() { console.log(this.name) }

您可以将原型函数添加到Person类,然后每个人都可以访问该函数。

答案 3 :(得分:0)



var Person = function(name, age) {
  this.name = name;
  this.age = age;
};

Person.prototype.sayName = function () {
 alert(this.name)
}

var p1 = new Person('Aaron', 32);

p1.sayName() 




您可以使用prototype

定义方法

Person.prototype.myMethod = function() { ... }