ObjektObjekte in JS sind eine Kombination aus Attributen und Verhaltensweisen , wobei Attribute statische Eigenschaften von Objekten und Verhaltensweisen, auch Methoden genannt, dynamische Eigenschaften von Objekten sind. Objekte in JavaScript werden hauptsächlich in drei Kategorien unterteilt:
Im ES-Standard definierte Objekte können in jeder ES-Implementierung verwendet werden, z. B. Math String Number Boolean Function Object
Von der JS-Laufzeitumgebung bereitgestellte Objekte, derzeit hauptsächlich vom Browser bereitgestellte Objekte, wie z. B. BOM DOM
Von Entwicklern selbst erstellte Objekte ObjektdefinitionDefinieren Sie ein nicht leeres Objekt // Nicht-Null-Objekt: var Objektname = { Eigenschaftsname: Wert, ... Methodenname: function([parameters]){ Anweisungen im Methodenkörper; } ... } var p1 = { Farbe: 'schwarz', //Attribute zum Objekt hinzufügen Gewicht: '188g', //Attribute sind durch Kommas getrennt Bildschirmgröße: 6,5, call: function(name){//Methode zum Objekt hinzufügen console.log("Ausgehender Anruf: "+name); }, sendMassage: Funktion(Nachricht){ console.log("Die gesendete Nachricht lautet: "+msg); }, Video abspielen: Funktion(){ console.log("Video abspielen"); }, Musik abspielen: Funktion(){ console.log("Musik wird abgespielt"); } } console.log("Handyfarbe:"+p1['Farbe']); //Sie können auch Objekt['Eigenschaft'] verwenden, um Eigenschaftswerte auszugeben console.log("Handygewicht:"+p1.weight); console.log("Bildschirmgröße:"+p1.screenSize); p1.call("张三");//Rufen Sie die Sendemethode des Objekts auf p1["sendMassage"]("helo"); p1.Video abspielen(); p1.Musik abspielen(); konsole.log(p1); Erstellen eines Objekts mit new Object() var p = new Object(); // Erstelle ein leeres Objekt p p2.name = "Liu Bei"; p2.sex = "männlich"; p2.Alter = 32; p2.sayHello = Funktion(){ console.log('Hallo'); } p2.sayHello(); //Objektmethode aufrufen Mit dem Konstruktor können Sie Objekte erstellen: Funktion Student(Name,Geschlecht,Alter){ this.name = name; //Dies bezieht sich auf das neu erstellte Objekt des Konstruktors this.sex = sex; dieses.Alter = Alter; dies.show = funktion(){ console.log("Name: "+dieser.name) console.log("Geschlecht: "+dieses.Geschlecht) console.log("Alter: "+dieses.Alter) } } var s1 = new Student('Student','Student',28);//s1 ist ein neues Objekt, das vom Konstruktor erstellt wurde, d. h. eine Instanz s1.show(); var s2 = neuer Student('Student','Student',23); s2.show(); Hinweis : Der Konstruktor kann Parameter haben oder nicht. Wenn keine Parameter vorhanden sind, können die Klammern weggelassen werden. Iterieren Sie über die Mitglieder eines ObjektsIterieren über die Eigenschaften und Methoden eines Objekts: Verwenden der for...in-Schleife für (var Variablenname im Objektnamen) { Loop-Anweisung} Funktion Student(Name,Geschlecht,Alter){ dieser.name = Name; dies.Geschlecht = Geschlecht; dieses.Alter = Alter; dies.show = funktion(){ console.log("Name: "+dieser.name) console.log("Geschlecht: "+dieses.Geschlecht) console.log("Alter: "+dieses.Alter) } } // s2 ist das zu durchlaufende Objekt var s2 = new Student('Student','Student',23); für(var k in s2){ console.log(k);//Ausgabename Geschlecht Alter show() console.log(s2[k]); // Duan Yunan 23 nacheinander ausgeben } in-Operator <br /> Ermittelt, ob ein Mitglied (Attribut) in einem Objekt vorhanden ist. Wenn es vorhanden ist, wird „true“ zurückgegeben, wenn es nicht vorhanden ist, wird „false“ zurückgegeben. Integrierte JS-ObjekteJavaScript bietet viele häufig verwendete integrierte Objekte, darunter das mathematische Objekt Math, das Datumsobjekt Date, das Array-Objekt Array und das String-Objekt String. Mathematische ObjekteMathematisches Objekt: Wird verwendet, um mathematische Operationen an Zahlen durchzuführen. Das Objekt muss nicht instanziiert werden und seine statischen Eigenschaften und statischen Methoden können direkt verwendet werden. Mathematisches Objekt: keine Instanziierung von Math.PI erforderlich: arithmetische Konstante PI Math.abs(x): Gibt den Absolutwert von x zurück.Math.max(args...): Gibt die Maximalzahl zurück.Math.min(args...): Gibt die Minimalzahl zurück.Math.pow(x,y): Gibt x hoch y zurück.Math.sqrt(x): Gibt die Quadratwurzel von x zurück.Math.random(): Gibt eine Zufallszahl zwischen 0,0 und 1,0 zurück.Math.round(x): Gibt die Ganzzahl zurück, die x am nächsten liegt.Math.floor(x): Gibt eine Ganzzahl zurück, die kleiner oder gleich x und am nächsten bei x liegt.Math.ceil(x): Gibt eine Ganzzahl zurück, die größer oder gleich x und am nächsten bei x liegt. Date-Objekt Datumsobjekt: Sie müssen new Date() verwenden, um das Objekt zu instanziieren, bevor Sie es verwenden können . Das Erstellen eines Objekts Date() ist ein Konstruktor, an den Sie Parameter übergeben können, um ein Datumsobjekt zu generieren. // 1. Erstellen Sie ein Date-Objekt ohne Parameter var date1 = new Date(); konsole.log(Datum1); // 2. Erstellen Sie ein Date-Objekt mit dem angegebenen Datum und der angegebenen Uhrzeit, indem Sie Jahr, Monat, Tag, Stunde, Minute und Sekunde übergeben. // Der Monat ist 0-11 var date2 = neues Datum (2021,4,22,10,17,55); konsole.log(datum2); // 3. Übergeben Sie eine Datums- und Uhrzeitzeichenfolge, um ein Datumsobjekt zu erstellen. var date3 = new Date("2021-5-22 18:19:25"); konsole.log(Datum3); konsole.log(date3.getMonth()) //4 console.log(date3.getTime()) // stellt die Anzahl der Millisekunden zwischen dem Date-Objekt und Mitternacht am 1. Januar 1970 dar console.log(date1.toLocaleDateString()) // 2021/6/14 console.log(date1.toLocaleString()) //2021/6/14 23:17:36 Uhr Konsole.log(date1.getFullYear())//2021 Array-Objekt Array: Es handelt sich um eine Sammlung von Daten desselben Typs. Es ähnelt in seiner Funktion gewöhnlichen Objekten und wird ebenfalls zum Speichern einiger Werte verwendet. Arrays verwenden Zahlen als Indizes, um interne Elemente zu bedienen.
Es gibt zwei Möglichkeiten, um zu bestimmen, ob ein Objekt ein Array ist:
Andere Array-Methoden wurden in früheren Artikeln ausführlich vorgestellt, deshalb werde ich sie hier nicht näher erläutern. String-ObjektString-Objekt: String-Objekt, muss mit new String() erstellt werden Allgemeine Zeichenfolgenmethoden - charAt(n) gibt den String an Position n zurück - concat(s1,s2,...) verkettet mehrere Strings - charCodeAt(n) gibt den ASCII-Code an Position n zurück - split('separator') wandelt einen String gemäß dem angegebenen Trennzeichen in ein String-Array um - substr(start,length) extrahiert length Zeichen von start, um einen neuen String zu bilden - substring(from,to) extrahiert den String zwischen from und to, um einen neuen String zu bilden - toLowerCase() wandelt Großbuchstaben in einem String in Kleinbuchstaben um, ohne den Originalstring zu beeinflussen, und gibt einen neuen String zurück - toUpperCase() wandelt alle Kleinbuchstaben in einem String in Großbuchstaben um, ohne den Originalstring zu beeinflussen, und gibt einen neuen String zurück - replace(str1,str2) ersetzt str1 in einem String durch str2 und gibt das Ersetzungsergebnis zurück, ohne den Originalstring zu beeinflussen Übungen zu Zeichenfolgenobjekten // Geben Sie eine Buchstabenfolge ein und zählen Sie, wie oft jeder Buchstabe in der Zeichenfolge vorkommt. var str = 'abBSdXbdea'; var lower = new Array(26);//Speichert die Anzahl der Vorkommen der 26 Kleinbuchstaben. var upper = new Array(26);//Speichert die Anzahl der Vorkommen der 26 Großbuchstaben. // Initialisiert zwei Arrays for(var i=0;i<lower.length;i++){ untere[i] = 0 obere[i] = 0 } für(var k=0;k<str.length;k++){ wenn(str.charAt(k)>='a' && str.charAt(k)<='z'){ untere[str.charCodeAt(k)-97]++ }sonst wenn(str.charAt(k)>='A' && str.charAt(k)<='Z'){ oberer[str.charCodeAt(k)-65]++ } } console.log(unten); Konsole.log(oben); /* Gib eine Dezimalzahl und ein Zahlensystem (2, 8, 16) ein, konvertiere die Dezimalzahl in das entsprechende Zahlenformat und gib den Rest aus: m = 15 k = 8 m%k speichert den Rest in einem Array*/ var m = parseInt(prompt('Bitte geben Sie eine Ganzzahl ein:')); var k = parseInt(prompt('Bitte geben Sie ein Zahlensystem ein (2~16)')); var Ergebnis = ['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F']; var arr = new Array(); //Das Ergebnis der Zahlensystemkonvertierung speichern var i = 0; while(m!=0){//Konvertiere m in ein Zahlensystem und setze den Rest in das arr-Array arr[i] = m%k; m = parseInt(m/k); ich++; } var str = ''; wenn(k==8){ str = "0"; }sonst wenn(k==16){ str = "0x"; } für(var i=arr.length-1;i>=0;i--){ str += Ergebnis[arr[i]]; } console.log('Das Ergebnis der Konvertierung ist: '+str); Werttypen und Referenztypen Werttyp: einfache Datentypen (Zeichenfolge, numerisch, Boolesch, undefiniert, null) Hinweis: Die Besonderheit des Referenztyps besteht darin, dass die Variable nur die Adresse einer Referenz speichert. Bei der Zuweisung eines Wertes an eine Variable wird das Objekt nicht kopiert, sondern die beiden Variablen zeigen auf die Referenz desselben Objekts. Nachfolgend finden Sie eine Analyse des Stapels und des Heaps im Speicher Es ist ersichtlich, dass für im Heap-Speicher gespeicherte Objekte die Variable tatsächlich einen Zeiger speichert, der auf einen anderen Speicherort zeigt. Dieser Zeiger wird verwendet, um die Eigenschaften und Werte der im Heap gespeicherten Objekte zu finden, und jeder Speicherplatz hat eine andere Größe, sodass je nach Situation eine spezifische Zuweisung erfolgen sollte. Damit ist dieser Artikel über JavaScript-Objekte, integrierte Objekte, Werttypen und Referenztypen abgeschlossen. Weitere Informationen zu JavaScript-Basisobjekten finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Eine kurze Einführung in die Verwendung des Dezimaltyps in MySQL
>>: So installieren Sie den MySQL 5.7.28-Binärmodus unter CentOS 7.4
Allgemeiner Handy-Stil: @media alle und (Ausricht...
MySQL 5.7 fügt viele neue Funktionen hinzu, wie z...
1. Ziehen Sie das Bild Docker-Pull-Registrierung....
Vertikaler Tisch Vertikale Tabellenaufteilung bed...
Struktureller (Position) Pseudoklassenselektor (C...
Inhaltsverzeichnis 1. for-Schleife 2. Doppelte fo...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis 1. Tabellenmethode umbenennen ...
Nachdem MySQL 5.7.18 erfolgreich installiert wurd...
Kürzlich stieß ich auf eine Datenbank mit folgend...
Code kopieren Der Code lautet wie folgt: <span...
In diesem Artikel wird der spezifische Code der U...
Vorwort Dies ist eine neue Funktion, die ich kürz...
Lassen Sie mich ein Problem zusammenfassen, mit d...
Docker erfreut sich immer größerer Beliebtheit. E...