1. Einleitung Es gibt viele Operatoren in js, die in früheren Artikeln erwähnt wurden. Zum Beispiel: js-Ganzzahloperationen: Mit var foo = (12,4 / 4,13) | 0; // das Ergebnis ist 3 var bar = ~~(12.4 / 4.13); //Das Ergebnis ist 3 Es gibt nämlich noch einen anderen kleinen Trick var eee="eee"; Alarm(!!eee) Dies sind einige Operatoren. Weitere Einzelheiten finden Sie unter 49 JavaScript-Tipps und Tricks. Der JS-Operator einzelner vertikaler Strich "|" Heute möchte ich noch ein paar Dinge hinzufügen: 2. Komma-Operatorsei x = 1; x = (x++, x); console.log(x); // erwartete Ausgabe: 2 x = (2, 3); console.log(x); // erwartete Ausgabe: 3 Der Kommaoperator wertet das Argument auf der linken Seite vor dem Argument auf der rechten Seite aus. Anschließend wird der Wert des äußersten rechten Arguments zurückgegeben. var a = 10, b = 20; Funktion KommaTest(){ gebe a++, b++, 10 zurück; } var c = KommaTest(); alert(a); // gibt 11 zurück alert(b); // gibt 21 zurück alert(c); // gibt 10 zurück Nachdem wir nun die Aufruffunktionsoperatoren kennen, wollen wir anhand eines Beispiels veranschaulichen, wie ihre Konflikte behandelt werden. alert(2*5, 2*4); // Ausgabe 10 Der obige Code gibt 10 aus, aber wenn er nach dem Prinzip des Kommaoperators interpretiert wird, sollte er 8 ausgeben. Warum? Da der Kommaoperator in alert((2*5, 2*4)); // gibt 8 zurück 3. JavaScript-Null-Koaleszenzoperator (??) Der Dies unterscheidet sich vom logischen ODER-Operator (||), der den rechten Operanden zurückgibt, wenn der linke Operand falsch ist. Das heißt, wenn Sie || verwenden, um Standardwerte für bestimmte Variablen festzulegen, kann es zu unerwartetem Verhalten kommen. Zum Beispiel, wenn es falsch ist (z. B. „“ oder 0). Siehe Beispiel unten. let str = null||undefiniert let result = str??'haorooms blog' console.log(Ergebnis)//haorooms-Blog const nullValue = null; const emptyText = ""; // Leere Zeichenfolge, ein falscher Wert, Boolean("") === false const eineZahl = 42; const valA = nullValue ?? „der Standardwert von valA“; const valB = emptyText ?? "Der Standardwert von valB"; const valC = irgendeineZahl ?? 0; console.log(valA); // "Standardwert von valA" console.log(valB); // "" (Leere Zeichenfolge ist falsch, aber nicht null oder undefiniert) konsole.log(valC); // 42 4. optionaler Verkettungsoperator in JavaScript (?.) Der optionale Verkettungsoperator ( Bei Verwendung des optionalen Verkettungsoperators ( ?. ) beschwert sich der Browser nicht! const demo = { Name: 'haorooms', Katze: { Name: ‚Haorooms-Katze‘ } }; Konsole.log(demo.dog?.name); // erwartete Ausgabe: undefiniert konsole.log(demo.was?.()); // erwartete Ausgabe: undefiniert Funktionsaufruf: let result = someOne.benutzerdefinierteMethode?.(); Wenn Sie zulassen möchten, dass Optionale Verkettung mit Ausdrücken: let nestedProp = obj?.['prop' + 'Name']; Optionale Verkettung zum Zugriff auf Arrays: Lassen Sie arrayItem = arr?.[42]; Kurzschlussberechnung: lass potenziellNullObj = null; sei x = 0; let prop = potenziellNullObj?.[x++]; console.log(x); // x wird nicht erhöht und gibt weiterhin 0 aus //Wenn bei Verwendung optionaler Verkettung in einem Ausdruck der linke Operand null oder undefiniert ist, wird der Ausdruck nicht ausgewertet let customer = { Name: "haorooms", Details: { Alter: 82 } }; let customerCity = customer?.city ?? "Stadt"; console.log(Kundenstadt); // "China" Dies ist das Ende dieses Artikels über die Zusammenfassung ungewöhnlicher JS-Operationsoperatoren. Weitere relevante Inhalte zu JS-Operationsoperatoren finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Detaillierter Prozess zur Verwendung von Vscode in Kombination mit Docker für die Entwicklung
>>: CSS implementiert einen Popup-Fenstereffekt mit einer Maskenebene, die geschlossen werden kann
1. Beispiel einer Dropdown-Liste Der Code lautet ...
Ein neues Fenster wird geöffnet. Vorteile: Wenn d...
Wir hoffen, dass wir durch die Einbindung der Wet...
1. Erklärung zur Datendesensibilisierung Bei den ...
Informationen zur Centos-Installation von MySQL f...
Dieser Artikel richtet sich hauptsächlich an diej...
Beim Schreiben des HTTP-Moduls von nginx müssen d...
Inhaltsverzeichnis 1. Ant Design Vue 1. Offiziell...
Der DIV-Hintergrund ist halbtransparent, aber die ...
Erstellen Sie eine Simulationsumgebung: Betriebss...
Wenn Sie in CSS die Eigenschaft „font-family“ ver...
Inhaltsverzeichnis 1. Gleichzeitige Zugriffskontr...
Einstellungen für die Transaktionsisolationsebene...
Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...
1. Importieren Sie das Modul und definieren Sie e...