Die objektorientierte Fähigkeit in JavaScript wurde später aus Kompatibilitätsgründen hinzugefügt.
function Animal(){ this.name = "Animal"; this.showName = function(){ alert(this.name); } } function Cat(){ this.name = "Cat"; } var animal = new Animal(); var cat = new Cat(); //通过call或apply方法,将原本属于Animal对象的showName()方法交给对象cat来使用了。 //输入结果为"Cat" animal.showName.call(cat,","); //animal.showName.apply(cat,[]);
Es ist also ersichtlich, dass Aufruf und Anwendung für dynamische Änderungen gelten. Dies erscheint, wenn ein Objekt keine bestimmte Methode hat, andere jedoch schon. Wir können call oder apply verwenden, um mit den Methoden anderer Objekte zu arbeiten.
wird häufig verwendet. Der über document.getElementsByTagName ausgewählte Dom-Knoten ist ein Array-ähnliches Array. Unter Array können keine Push-, Pop- und andere Methoden angewendet werden. Wir können Folgendes übergeben:
var domNodes = Array.prototype.slice.call(document.getElementsByTagName("*"));
Auf diese Weise kann domNodes alle Methoden unter Array anwenden.