我有以下代码:
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(){}
答案 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())