2 Ocak 2011, Pazar
Javascript: Fonksiyon Uzatmak
Bunu istememin asıl nedeni başlatma fonksiyonu uzatmak istiyorum.
Şöyle bir şey:
// main.js
window.onload = init();
function init(){
doSomething();
}
// extend.js
function extends init(){
doSomethingHereToo();
}
PHP bir sınıf uzatmak gibi bir işlevi genişletmek istiyorum.
Ve diğer dosyaları da uzatmak istiyorum, örneğin main.js
extended.js
genişletilmiş işlev özgün başlatma fonksiyonu var.
CEVAP
2 Ocak 2011, Pazar
Eğer sadece işlevi de çalıştırmak istiyorsanız bu konuda, amacınızın ne olduğuna bağlı, gitmek için çeşitli yollar vardır ve aynı bağlamda, .apply()
kullanabilirsiniz:
function init(){
doSomething();
}
function myFunc(){
init.apply(this, arguments);
doSomethingHereToo();
}
Eğer bir daha yeni init
ile değiştirmek istiyorsanız, bu gibi görünür:
function init(){
doSomething();
}
//anytime later
var old_init = init;
init = function() {
old_init.apply(this, arguments);
doSomethingHereToo();
};
Bunu Paylaş:
Standart bir fonksiyon JavaScript null...
Anonim fonksiyonları Javascript dosyal...
Javascript Fonksiyon Adı mı?...
Nasıl Javascript bir fonksiyon tanımla...
JavaScript fonksiyon bildirimi ve değe...