


Detaillierte Erläuterung der Anwendungsbeispiele der statischen Methode object.extend in Javascript
Da es sich um eine Klasse handelt, gibt es abstrakte Klassen, konkrete Klassen und die Vererbung von Klassen. Gleichzeitig können Mitglieder einer Klasse Instanzmitglieder und statische Mitglieder haben.
Sehen Sie sich zunächst den folgenden Code im Prototyp an:
var Abstract = new Object(); Object.extend = function(destination, source) { for (property in source) { destination[property] = source[property]; } return destination; } Object.prototype.extend = function(object) { return Object.extend.apply(this, [this, object]); }
Der erste Code deklariert ein Objekt. Das Objekt ist eigentlich eine Funktion. Es hat also keine Mitglieder Da es sich um eine leere Klasse handelt, hat Abstract keine Mitglieder. Lassen Sie uns vorerst nicht darüber sprechen. Wir werden später sehen, dass dies die Grundlage abstrakter Klassen ist. Lassen Sie uns zunächst die folgende Syntax erklären:
function.member=function(){}
In diesem Fall wurde die Funktion im Allgemeinen definiert. Die Funktion dieser Anweisung besteht darin, der Funktion ein statisches Mitglied hinzuzufügen Es steht nach dem Gleichheitszeichen. Der zweite Code oben, Object.extend=..., fügt beispielsweise eine statische Methode „extend“ zur Object-Klasse hinzu. Ok, wir wissen, wie man statische Mitglieder für eine Klasse definiert. Dann möchten Sie bestimmt wissen, wie man Instanzmitglieder definiert. Es ist ganz einfach, fügen Sie einen Prototyp zwischen dem Klassennamen und dem Mitgliedsnamen ein:
function.prototype.member=function(){}
Prototyp kann nicht nur so verwendet werden, sondern auch:
function.prototype={ member1:function(){……}, member2:"abc", member3:function(){……} }
So wird die Definition von Instanzmitgliedern implementiert. Aber was bedeutet Prototyp? Im ersten Artikel habe ich gesagt, dass es direkt in {} eingeschlossen ist, um ein Objekt darzustellen. Beispielsweise sind Prototyp und Klasse auf diese Weise definierte globale Objekte. Betrachtet man die folgende Verwendung, folgt auf den Prototyp eine {}-Struktur. Ist es auch ein Objekt? Ja, das stimmt, ein Prototyp ist eigentlich ein Objekt! In JavaScript können wir einem Objekt beliebig Mitglieder hinzufügen, indem wir die folgende Syntax verwenden:
object.member=function(){...}; Solange es auf diese Weise definiert ist, kann ein Objekt dies sofort tun Mitglieder haben. JavaScript ist so magisch!
Okay, wir wissen jetzt, dass Prototyp ein Objekt und Funktion eine Funktion oder Klasse ist. Dann können wir uns Prototyp als statisches Mitglied vorstellen, das intern von jeder Klasse (Funktion) beibehalten wird. Seine Funktion besteht darin, alle Mitgliedszeiger dieser Klasse zu speichern. Diese Mitglieder sind jedoch nur Prototypen und wurden nicht initialisiert, was auch der ursprünglichen Bedeutung des Prototyps entspricht. Sie können Mitglieder jederzeit über das Prototypobjekt erweitern. Wenn eine Klasse neu ist, werden die Prototypmitglieder initialisiert und dann dem instanziierten Objekt zugewiesen.
Der dritte Codeabschnitt oben, Object.prototype.extend=..., fügt eine Instanzmethode zum Erweitern von Object hinzu. In der Instanzmethode können Sie auf diesen Zeiger verweisen, der auf das von dieser Klasse instanziierte Objekt selbst zeigt. Natürlich hat dieses Objekt eine Mitgliedserweiterung.
Bevor Sie fortfahren, verstehen Sie bitte zwei Sätze:
for(var p in object){} method.apply(object,arguments);
Die zweite Anweisung: Wenden Sie die Methodenmethode zur Ausführung auf das Objekt an, und der Parameter ist das Argumentarray. Hinweis: Die Methode ist kein Mitglied des Objekts. Wir können jedoch davon ausgehen, dass die Ausführung dieser Anweisung Folgendes bedeutet: object.method(arguments). Dies ist eine sehr wichtige Methode, die später häufig verwendet wird und mit der Sie sich nach und nach vertraut machen werden.
Fahren wir mit „extend“ fort. Es handelt sich um eine sehr wichtige Methode. Sie sehen, dass sie sowohl ein statisches Mitglied als auch ein Instanzmitglied der Klasse „Object“ ist. Werfen wir einen Blick darauf: Es empfängt zwei Parameter, Ziel und Quelle. Wenn Ziel und Quelle beide Klassen sind, besteht seine Funktion darin, alle statischen Mitglieder der Klassenquelle in das Klassenziel zu kopieren. Wenn Ziel und Quelle beide Objekte sind, dann alle Instanzmitglieder werden kopiert. Wenn zu diesem Zeitpunkt bereits ein Mitglied mit demselben Namen im Ziel vorhanden ist, wird dieses Mitglied überschrieben. Das heißt, wenn das Ziel alle Mitglieder der Quelle hat, gibt die Funktion dieses Ziel zurück. Schauen wir uns „extend“ als Instanzmitglied von Object an:
Object.prototype.extend = function(object) { return Object.extend.apply(this, [this, object]); }
obj.extend(this, object);
dies wird nicht erklärt, es repräsentiert sich selbst. Was ist Objekt? Parameter sind Parameter, die von der Instanzmethode „extend“ übergeben werden. Lassen Sie sich nicht verwirren. Wie wäre es mit verlängern? obj definiert nicht den Extend-Instanzmember, kann aber über Apply den statischen Member Extend von Object verwenden. Werfen wir einen Blick auf den Funktionskörper von Extend:
Object.extend = function(destination, source) { for (property in source) { destination[property] = source[property]; } return destination; }
因为obj是对象,object也是对象,即destination和source都是对象,于是函数的作用就是使obj具有object的所有成员。并且会返回obj。听起来有点拗口,但逻辑很简单:让obj“继承于”object!很好,我们看到了继承,但你肯定会问,对象的继承,第一次听说啊,我们讲继承都是讲的类的继承。没错,现在的确还没有看到真正的类继承,但已经近在眼前了:类不就是有个prototype吗,而prototype是对象!
好,想到这一点,类的继承语法看似很简单了:
b.prototype.extend(a.prototype);
让b继承a。
可是事实却没那么简单:prototype是存放方法原型指针,extend方法没有初始化,不能使用!要使用extend,就必须实例化一个对象。还是看看prototype是怎么做的吧:
b.prototype=(new a()).extend(b.prototype);
很高明的办法!充分说明了函数其实也是一个变量的道理。先实例化a对象,然后在它基础上调用extend,将所有的成员b.prototype的成员覆盖到a的对象,然后把这个a对象再赋值给b.prototype。完成了b从a继承的工作。在实际使用中,一般的用法都是:
b.prototype=(new a()).extend({});
因为让一个b继承自a,通常b之前都是一个未定义的类,所以后面的{}中其实就可以定义类成员。当然,你也可以先定义,再继承,只是和传统概念有所区别了。
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Anwendungsbeispiele der statischen Methode object.extend in Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

So implementieren Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem. Einführung: Mit der kontinuierlichen Weiterentwicklung der Technologie ist die Spracherkennungstechnologie zu einem wichtigen Bestandteil des Bereichs der künstlichen Intelligenz geworden. Das auf WebSocket und JavaScript basierende Online-Spracherkennungssystem zeichnet sich durch geringe Latenz, Echtzeit und plattformübergreifende Eigenschaften aus und hat sich zu einer weit verbreiteten Lösung entwickelt. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Spracherkennungssystem implementieren.

Wesentliche Tools für die Aktienanalyse: Lernen Sie die Schritte zum Zeichnen von Kerzendiagrammen in PHP und JS. Mit der rasanten Entwicklung des Internets und der Technologie ist der Aktienhandel für viele Anleger zu einer wichtigen Möglichkeit geworden. Die Aktienanalyse ist ein wichtiger Teil der Anlegerentscheidung, und Kerzendiagramme werden häufig in der technischen Analyse verwendet. Wenn Sie lernen, wie man Kerzendiagramme mit PHP und JS zeichnet, erhalten Anleger intuitivere Informationen, die ihnen helfen, bessere Entscheidungen zu treffen. Ein Candlestick-Chart ist ein technischer Chart, der Aktienkurse in Form von Candlesticks anzeigt. Es zeigt den Aktienkurs

Die Technologie zur Gesichtserkennung und -erkennung ist bereits eine relativ ausgereifte und weit verbreitete Technologie. Derzeit ist JS die am weitesten verbreitete Internetanwendungssprache. Die Implementierung der Gesichtserkennung und -erkennung im Web-Frontend hat im Vergleich zur Back-End-Gesichtserkennung Vor- und Nachteile. Zu den Vorteilen gehören die Reduzierung der Netzwerkinteraktion und die Echtzeiterkennung, was die Wartezeit des Benutzers erheblich verkürzt und das Benutzererlebnis verbessert. Die Nachteile sind: Es ist durch die Größe des Modells begrenzt und auch die Genauigkeit ist begrenzt. Wie implementiert man mit js die Gesichtserkennung im Web? Um die Gesichtserkennung im Web zu implementieren, müssen Sie mit verwandten Programmiersprachen und -technologien wie JavaScript, HTML, CSS, WebRTC usw. vertraut sein. Gleichzeitig müssen Sie auch relevante Technologien für Computer Vision und künstliche Intelligenz beherrschen. Dies ist aufgrund des Designs der Webseite erwähnenswert

WebSocket und JavaScript: Schlüsseltechnologien zur Realisierung von Echtzeit-Überwachungssystemen Einführung: Mit der rasanten Entwicklung der Internet-Technologie wurden Echtzeit-Überwachungssysteme in verschiedenen Bereichen weit verbreitet eingesetzt. Eine der Schlüsseltechnologien zur Erzielung einer Echtzeitüberwachung ist die Kombination von WebSocket und JavaScript. In diesem Artikel wird die Anwendung von WebSocket und JavaScript in Echtzeitüberwachungssystemen vorgestellt, Codebeispiele gegeben und deren Implementierungsprinzipien ausführlich erläutert. 1. WebSocket-Technologie

So implementieren Sie ein Online-Reservierungssystem mit WebSocket und JavaScript. Im heutigen digitalen Zeitalter müssen immer mehr Unternehmen und Dienste Online-Reservierungsfunktionen bereitstellen. Es ist von entscheidender Bedeutung, ein effizientes Online-Reservierungssystem in Echtzeit zu implementieren. In diesem Artikel wird erläutert, wie Sie mit WebSocket und JavaScript ein Online-Reservierungssystem implementieren, und es werden spezifische Codebeispiele bereitgestellt. 1. Was ist WebSocket? WebSocket ist eine Vollduplex-Methode für eine einzelne TCP-Verbindung.

Mit der rasanten Entwicklung der Internetfinanzierung sind Aktieninvestitionen für immer mehr Menschen zur Wahl geworden. Im Aktienhandel sind Kerzendiagramme eine häufig verwendete Methode der technischen Analyse. Sie können den sich ändernden Trend der Aktienkurse anzeigen und Anlegern helfen, genauere Entscheidungen zu treffen. In diesem Artikel werden die Entwicklungskompetenzen von PHP und JS vorgestellt, der Leser wird zum Verständnis des Zeichnens von Aktienkerzendiagrammen geführt und es werden spezifische Codebeispiele bereitgestellt. 1. Aktien-Kerzendiagramme verstehen Bevor wir uns mit dem Zeichnen von Aktien-Kerzendiagrammen befassen, müssen wir zunächst verstehen, was ein Kerzendiagramm ist. Candlestick-Charts wurden von den Japanern entwickelt

Einführung in die Verwendung von JavaScript und WebSocket zur Implementierung eines Online-Bestellsystems in Echtzeit: Mit der Popularität des Internets und dem Fortschritt der Technologie haben immer mehr Restaurants damit begonnen, Online-Bestelldienste anzubieten. Um ein Echtzeit-Online-Bestellsystem zu implementieren, können wir JavaScript und WebSocket-Technologie verwenden. WebSocket ist ein Vollduplex-Kommunikationsprotokoll, das auf dem TCP-Protokoll basiert und eine bidirektionale Kommunikation zwischen Client und Server in Echtzeit realisieren kann. Im Echtzeit-Online-Bestellsystem, wenn der Benutzer Gerichte auswählt und eine Bestellung aufgibt

JavaScript-Tutorial: So erhalten Sie HTTP-Statuscode. Es sind spezifische Codebeispiele erforderlich. Vorwort: Bei der Webentwicklung ist häufig die Dateninteraktion mit dem Server erforderlich. Bei der Kommunikation mit dem Server müssen wir häufig den zurückgegebenen HTTP-Statuscode abrufen, um festzustellen, ob der Vorgang erfolgreich ist, und die entsprechende Verarbeitung basierend auf verschiedenen Statuscodes durchführen. In diesem Artikel erfahren Sie, wie Sie mit JavaScript HTTP-Statuscodes abrufen und einige praktische Codebeispiele bereitstellen. Verwenden von XMLHttpRequest
