


Wie definiert JavaScript eine hide-ähnliche Methode, die mit einem Klick aufgerufen werden kann?
Wie definiert Javascript die angeklickte Methode ähnlich wie beim Aufruf durch hide
Prototyp-Methode. . . . Prototyp
Definieren Sie beispielsweise eine Funktion für das Array Array
Array.prototype.in_array = function ($string) { for (var i = 0; i
{
for (i = 0; i
true zurückgeben;
}
}
false zurückgeben;
}
Man kann es einfach nennen
var a = neues Array('a');
a.in_array('a');
Überprüfen Sie, ob es existiert
In z.B. String
String.prototype.trim = function()
{
return this.replace(/^s*|s*$/g, '');
}
Man kann es einfach nennen
var a = 'abcdefg';
a.trime();
Dadurch werden die Leerzeichen auf beiden Seiten entfernt
Das Gleiche gilt für benutzerdefinierte Funktionen. Erstellen Sie zunächst eine Funktion und verwenden Sie einen Prototyp, um Methoden hinzuzufügen.
Wie können Objekte in JavaScript definiert werden?
Mehrere Möglichkeiten, Javascript-Objekte zu definieren
1. Factory-Methode: Erstellen Sie zuerst das Objekt und fügen Sie dann Methoden und Eigenschaften zum Objekt hinzu. Vermeiden Sie nach dem Schließen die Verwendung des neuen Operators zum Erstellen von Objekten. Obwohl dieser Ansatz einige Nachteile hat, wird beispielsweise beim Definieren einer Methode innerhalb einer Factory-Funktion bei jedem Aufruf eine neue Funktion erstellt.
Funktionsfabrik (Name, Person, Adresse, Zeit){
var tmp=neues Objekt;
tmp.name=name;
tmp.person=person;
tmp.address=adresse;
tmp.workTime=function(){
alert("Die Zeit, zu der wir mit der Arbeit beginnen" + Zeit);
}
return tmp;
}
Var Fabrik1 = Fabrik("Drogen", 100, "Huashan Rd", 10);
var Factory2 = Factory("TCMdrugs", 100, "hongqiao Rd", 11);
factory1.workTime();
factory2.workTime();//Hier haben Factory1 und Factory2 unterschiedliche Methoden
Obwohl dieses Problem auf folgende Weise behoben werden kann, mangelt es an einer guten Kapselung
Funktionsfabrik (Name, Person, Adresse, Zeit){
var tmp=neues Objekt;
tmp.name=name;
tmp.person=person;
tmp.address=adresse;
tmp.workTime=workTime();
return tmp;
}
Funktion workTime(){
alert("Die Zeit, in der wir mit der Arbeit beginnen" + this.time);
}
2. Die Konstruktormethode bedeutet, dass das Schlüsselwort this im Konstruktor verwendet wird, um ein Objekt zu erstellen. Bei der Verwendung muss es über den neuen Operator instanziiert werden. Diese Methode hat jedoch das gleiche Problem wie die Factory-Methode, d. h. bei jedem Aufruf des Konstruktors wird ein neues Funktionsobjekt erstellt, was zu einer wiederholten Erstellung der Funktion führt.
Funktionskonstrukt (Name, Person, Adresse, Zeit) { //Schreiben Sie hier Ihre Codelogik }
dieser.name=name;
diese.person=person;
this.address=Adresse;
this.workTime=function(){
alert("Die Zeit, in der wir mit der Arbeit beginnen" + this.time);
};
}
3. Prototyp-Methode: Verwenden Sie das Prototyp-Attribut, um Attribute und Methoden zu implementieren. Sie können den Objekttyp über die Instanz überprüfen, wodurch das Problem der wiederholten Erstellung von Funktionen gelöst wird. Es ist jedoch zu beachten, dass Eigenschaften nicht durch die Übergabe von Parametern initialisiert werden können.
Funktion Car(){
}
Car.prototype.color = "rot";
Car.prototype.doors = 4;
Car.prototype.mpg = 23;
Car.prototype.showColor = function() {
alert(this.color);
};
var car1 = neues Auto();
var car2 = neues Auto();
Aber wenn Sie auf die folgende Situation stoßen, geht wieder etwas schief
Car.prototype.drivers = ["mike", "sue"];
car1.drivers.push("matt");
alert(car1.drivers); //Ausgabe „mike,sue,matt“
alert(car2.drivers); // Ausgabe „mike, sue, matt“
Treiber sind Zeiger auf Array-Objekte, und beide Instanzen von Car verweisen auf dasselbe Array.
4. Gemischte Konstruktor-/Prototyp-Methode: Lösung zur Prototyp-Methode
Funktionsauto (sColor, iDoors, iMpg) { this.color = sColor; this.doors = iDoors; this.mpg = iMpg; }
this.color = sColor;
this.doors = iDoors;
this.mpg = iMpg;
this.drivers = ["mike", "sue"];
}
Car.prototype.showColor = function () { // dein Code }
alert(this.color);
};
var car1 = neues Auto("red", 4, 23);
var car2 = neues Auto("blau", 3, 25);
car1.drivers.push("matt");
alert(car1.drivers);
alert(car2.drivers);
5. Dynamische Prototypenmethode: Dies ist eine sehr empfehlenswerte Methode. Sie vermeidet die Probleme, die bei den vorherigen Methoden auftreten, und bietet einen benutzerfreundlicheren Codierungsstil.
Funktionsauto (sColor, iDoors, iMpg) { this.color = sColor; this.doors = iDoors; this.mpg = iMpg; }
this.color = sColor;
this.doors = iDoors;
this.mpg = iMpg;
this.drivers = ["mike", "sue"];
if(typeof Car.initialized == "undefiniert"){
Car.prototype.showColor = function () { // dein Code }
alert(this.color);
};
Car.initialized = true;
}
}
var car1 = neues Auto("red", 4, 23);
var car2 = neues Auto("blau", 3, 25);
car1.drivers.push("matt");
alert(car1.drivers);
alert(car2.drivers);
6. Gemischte Factory-Methode: Sie ähnelt der Factory-Methode, verwendet jedoch das neue Schlüsselwort zur Instanziierung. Obwohl sie die gleichen Nachteile wie die Werksmethode hat, wird sie nicht empfohlen.
Das obige ist der detaillierte Inhalt vonWie definiert JavaScript eine hide-ähnliche Methode, die mit einem Klick aufgerufen werden kann?. 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



Was bedeutet die Drive Health -Warnung in Windows -Einstellungen und was sollten Sie tun, wenn Sie die Festplattenwarnung erhalten? Lesen Sie dieses Php.cn-Tutorial, um Schritt-für-Schritt-Anweisungen zu erhalten, um diese Situation zu bewältigen.

In Artikel werden die Bearbeitungs -Windows -Registrierung, Vorsichtsmaßnahmen, Sicherungsmethoden und potenzielle Probleme aus falschen Änderungen erläutert. Hauptproblem: Risiken der Systeminstabilität und des Datenverlusts durch unsachgemäße Änderungen.

In Artikel werden die Verwaltung von Windows -Diensten für die Systemgesundheit erörtert, einschließlich Starten, Stoppen, Neustarten von Diensten und Best Practices für Stabilität.

Der Dampfwolkenfehler kann durch viele Gründe verursacht werden. Um ein Spiel reibungslos zu spielen, müssen Sie einige Maßnahmen ergreifen, um diesen Fehler zu entfernen, bevor Sie das Spiel starten. PHP.CN -Software führt in diesem Beitrag einige beste Möglichkeiten sowie nützlichere Informationen ein.

Möglicherweise sehen Sie, dass die „Verbindung zu den Windows Metadata und Internet Services (WMIS) nicht hergestellt werden konnte“. Fehler beim Ereigniszuschauer. In diesem Beitrag von PHP.CN wird das Problem der Windows -Metadaten und des Internet -Dienste entfernen.

In Artikeln werden Standard -Apps für Dateitypen unter Windows geändert, einschließlich Rückkehr- und Massenänderungen. Hauptproblem: Keine integrierte Option zur Änderung der Schüttung.

KB5035942 Update -Probleme - Das Absturzsystem kommt häufig bei Benutzern vor. Die Menschen hoffen, einen Ausweg aus der Art von Schwierigkeiten herauszuholen, wie zum Beispiel eines Absturzsystems, Installation oder Klangprobleme. Targeting dieser Situationen, in diesem Beitrag, der von Php.cn Wil veröffentlicht wurde

In dem Artikel wird erläutert, wie der Gruppenrichtlinieneditor (Gpedit.MSC) in Windows verwendet wird, um die Systemeinstellungen zu verwalten, um gemeinsame Konfigurationen und Fehlerbehebungsmethoden hervorzuheben. Es stellt fest, dass gpedit.msc in Windows Home Editions nicht verfügbar ist, was schlägt, was vorschlägt, was vorschlägt
