我有以下代碼:從函數內部調用函數?
var A = function (id) {
var elem = document.getElementById(id);
function text() {
return "Hello world";
}
this.other = function(){
console.log(text());
}
}
如果我想從外面添加other
功能,還自稱喜歡這個文本()函數:
(function(A){
A.prototype.other = function() {
console.log(text());
}
})(A);
有沒有辦法做到那?我的意思是,無需更改function text(){}
到this.text=function(){}
** **爲什麼你不希望改變'功能文本(){}''到= this.text功能(){}'? – phihag
因爲我不希望它被覆蓋。 'var a = new A(); a.text = function(){}' – IchHabsDrauf
然後你的問題應該是'我如何防止名稱被覆蓋',並提及爲什麼[屬性](https://developer.mozilla.org/en/docs/ Web/JavaScript/Reference/Global_Objects/Object/defineProperty)是不夠的。您也應該考慮是否要包含隨機覆蓋其他庫名稱的代碼。 – phihag