Wie man die Funktionalität der SQL Coalesce-Anweisung in Javascript nachahmt

8

Ich habe mich gefragt, ob es in JavaScript eine Möglichkeit gibt, Logik ähnlich der coalesce-Anweisung in sql zu haben, die Daten in einer bestimmten Reihenfolge wie folgt zurückgibt:

%Vor%

gibt es eine elegante Möglichkeit, mit Null-Werten in Javascript umzugehen, genauso wie sql Ergebnisse in der obigen Anweisung liefert?

Ich weiß, ich könnte technisch eine switch-Anweisung haben, aber das würde möglicherweise unnötigen Code erfordern

Danke.

    
some_bloody_fool 02.02.2012, 21:38
quelle

4 Antworten

10

Sie können ein ODER verwenden.

%Vor%     
pete 02.02.2012, 21:41
quelle
3

Sie können "falsy" -Werte und den Operator || (logisches ODER) verwenden:

%Vor%

Oben würde den Wert von bar zu foo zuweisen, wenn bar zu einem "truthy" Wert und baz anderenfalls (zB wenn bar undefined, null, false etc.) p>     

BrokenGlass 02.02.2012 21:41
quelle
3

Das Problem mit || sind Werte wie 0 , die möglicherweise erwünscht sind. Sie könnten Ihre eigene JavaScript-Funktion schreiben, um COALESCE zu simulieren.

%Vor%

Was Sie dann wie erwartet aufrufen könnten:

%Vor%     
nybbler 02.02.2012 22:01
quelle
-1

Hier ist ein Link zur im Grunde gleichen Frage: Gibt es in JavaScript einen "Null-Koaleszenz" -Operator? ?

Das ist ein Null-Koaleszieren. In C # gibt es einen Nullkoaleszenzoperator "??" und darauf bezog sich der ursprüngliche Fragesteller der verknüpften Frage.

    
D. Patrick 02.02.2012 21:44
quelle

Tags und Links