Dieser Artikel führt Sie hauptsächlich in die Konvertierungsmethode des Bool-Werts in js und die zugehörigen Informationen von „&&“, „||“, „!!“ ein. Der Artikel führt sie ausführlich anhand von Beispielcode ein, was sehr hilfreich ist Für das Lernen aller. Oder die Arbeit hat einen gewissen Referenz- und Lernwert. Freunde, die sie brauchen, können unten vorbeischauen.
Vorwort
Das erste, was Sie wissen müssen, ist, dass es in js 6 Werte gibt, die falsch sind, nämlich: 0, '', null, undefiniert, NaN und false, andere (einschließlich {}, [], Infinity) sind wahr.
Sie können die Funktion Boolean() verwenden oder zweimal negieren, um den booleschen Wert von zu erhalten Das Objekt, wie Boolean(undefiniert) und !!undefiniert, kann auch den booleschen Wert false erhalten,
Für 0, '', null, undefiniert, NaN, {}, [], Infinity, der boolesche Wert ist falsch falsch falsch falsch falsch wahr wahr wahr.
Eines wissen wir also: Der boolesche Wert eines Objekts ist wahr, auch wenn es ein Objekt {} ist.
Bool-Wert-Konvertierung
数据类型 | bool值转化 |
---|---|
undefined | undefined 转化为 false |
Object | null 转化为false,其他为 true |
Boolean | false 转化为 false,true 转化为 true |
Number | 0,NaN 转化为false,其他为 true |
String | "" 转化为 false,其他为 true |
"&&"
Der Algorithmus des „&&“-Operators in JavaScript lautet wie folgt:
Wenn der Wert des Ausdrucks auf der linken Seite von && wahr ist, gilt der Wert des Ausdrucks auf der rechten Seite Seite wird zurückgegeben; andernfalls wird der Ausdruck auf der linken Seite zurückgegeben. Der Wert der Formel. Wenn mehrere &&-Ausdrücke zusammen ausgewertet werden, wird der Wert des ersten Ausdrucks zurückgegeben, der als falsch ausgewertet wird. Wenn alle Ausdrücke als wahr ausgewertet werden, wird der Wert des Ausdrucks ganz rechts zurückgegeben.
const aa = {'name': 'xx'}; const bb = aa && aa.age; // bb输出为undefined; let cc; const dd = cc && cc.name ? cc.name : undefined; // dd输出为undefined const dd = cc && cc.name; // dd输出为undefined;
Die Ausführungsergebnisse der beiden oben genannten Codesätze sind die gleichen, die ich beim Schreiben von Code immer verwendet habe, aber ich habe festgestellt, dass einige Einzeltests nicht abgedeckt werden können, was zu einem sehr niedrigen Einzeltest führt Testzweigabdeckung: Dieses Problem kann sehr gut gelöst werden. Die Wirkung dieser beiden Sätze ist die gleiche.
"||"
Der Algorithmus des „||“-Operators in Javascript lautet wie folgt:
Wenn der Wert des Ausdrucks auf der linken Seite von „||“ wahr ist, geben Sie den Wert des Ausdrucks auf der linken Seite zurück, andernfalls geben Sie den Wert des Ausdrucks auf der rechten Seite zurück. Wenn mehrere „||“-Ausdrücke zusammen ausgeführt werden, wird der Wert des ersten Ausdrucks zurückgegeben, dessen Operationsergebnis wahr ist. Wenn die Operationsergebnisse aller Ausdrücke falsch sind, wird andernfalls der Wert des Ausdrucks ganz rechts zurückgegeben.
const aa = false || 'xx'; // aa输出为'xx'
"!!"
"!!" Erzwingt die Umwandlung des Ausdrucks in einen Bool-Wert und das Ergebnis der Operation wahr oder falsch ist.
const aa = 'xx'; const bb = !!aa; // bb输出为true const cc = !!(NaN || undefined || null || 0 || '' ); // cc为false;
Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.
Verwandte Artikel:
Asynchrone Aktualisierungswarteschlange über nextTick() in Vuejs implementieren
So implementieren Sie ein 3D-Modell in three.js. Dargestellt
Angular CLI-Installationsanleitung
So implementieren Sie Toast mit ReactNative
Wie es geht Verwenden von CommonsChunkPlugin. Nur durch Extrahieren öffentlicher Module
können komplexe Vorgänge zu MVC in AngularJS erfolgen
Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen Bool-Wert in js?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!