在JS实例上绑定和调用方法

时间:2016-12-20 17:09:46

标签: javascript object methods

我有这个:

[Function]

我退出index 如何在我的实例上调用它时将方法绑定到对象或告诉它运行该函数

2 个答案:

答案 0 :(得分:3)

正如haim770指出的那样,您需要通过添加括号per1.wording来调用per1.wording()

此外,您可能需要this.number,而不是this.person



function Person(number){
  this.number = number;
}

Person.prototype.wording = function(){
  
  //changed this.person to this.number
  if (this.number == 1){ 
    return "person is";
  } else {
    return "people are";
  }
};

var per1 = new Person(1);

// invoked wording by adding ()
console.log(per1.wording(), '**'); 




答案 1 :(得分:0)

console.log(per1.wording());

这应该解决它。 我对你的代码的解释,以及如果我错了,我会如何写出来纠正我:

var persons=[];
function person(name){
persons.push(this);
person.name=name;
}
function saypers(){
if(persons.length>1){
alert("Plural!");
}else{
alert("Singular!");
}
}

做某事:

albert=new person("albert");
saypers();//singular
einstein=new person("einstein");
saypers();//plural
console.log(persons);//albert, einstein