从函数内部调用函数?

时间:2017-04-15 10:25:30

标签: javascript

我有以下代码:

var A = function (id) {
    var elem = document.getElementById(id);
    function text () {
        return "Hello world";
    }
    this.other = function(){
        console.log(text());
    }
}

如果我想从外部添加other函数并仍然像这样调用text()函数该怎么办:

(function(A){
    A.prototype.other = function() {
        console.log(text());
    }
})(A);

有没有办法做到这一点?我的意思是无需将function text(){}更改为this.text=function(){}

1 个答案:

答案 0 :(得分:1)

您可以将text()方法附加到仍然是对象的A函数,然后在A.prototype.other中使用它。

var A = function(id) {
  this.id = id;
}
A.text = function() {
  return "Hello world";
}
A.prototype.other = function() {
  return this.id + ' ' + A.text();
}

var a = new A(123);
console.log(a.other())