2016-11-08 5 views
0

Wie bekomme ich den Wert von Vielfachen? Also, wenn das oder das gleich ist?Wenn getValue gleich oder gleich

Ich habe das versucht und es verhält sich nicht so, wie ich es erwarte.

range.getValue() == "Yes" || "No" || "Repeat" 

Grundsätzlich möchte ich dies vermeiden

if (sheet.getName() == sheetToWatch && range.getColumn() == purchasedColumn && range.getValue() == "Yes") { 
    copyRow(); 
} else if (sheet.getName() == sheetToWatch && range.getColumn() == purchasedColumn && range.getValue() == "No") { 
    copyRow(); 
} else if (sheet.getName() == sheetToWatch && range.getColumn() == purchasedColumn && range.getValue() == "Repeat") { 
    copyRow(); 
} 
+1

Mögliche Duplikate von [Hat Javascript eine Möglichkeit, "in" zu tun, wenn ich sehen möchte, ob ein Wert einer von vielen ist?] (Http://stackoverflow.com/questions/35098064/does-javascript-have- Ein-Weg-zum-Tun-in-wann-ich-will-sehen-wenn-ein-Wert-ist-einer-ma) –

Antwort

3
function isIn(x, a) { 
    return a.indexOf(x) > -1; 
} 

if (sheet.getName() == sheetToWatch 
    && range.getColumn() == purchasedColumn 
    && isIn(range.getValue(), ["Yes", "No", "Repeat"])) { 
    copyRow(); 
} 

isIn Wert und eine Reihe von möglichen Werten und Schecks erfolgt, wenn der Wert im Array ist.

Natürlich könnte man auch den indexOf in den Zustand versetzen.