-1

I want to turn this if statement into a Ternary Operator.

if (
  (Vi_TDO1 != "TD") && 
  (Vi_TDO2 != "TD") && 
  (Vi_TDO3 != "TD") && 
  (Vi_TDO4 != "TD") && 
  (Vi_TDO5 != "TD") && 
  (Vi_TDO6 != "TD") && 
  (Vi_TDO7 != "TD") && 
  (Vi_TDO8 != "TD") && 
  (Vi_TDO9 != "TD") && 
  (Vi_TD10 != "TD") && 
  (Vi_TD11 != "TD") && 
  (Vi_TD12 != "TD")) {
  Opt_TDTD = "NO";
} else {
  Opt_TDTD = "YES";
}
mplungjan
  • 169,008
  • 28
  • 173
  • 236

4 Answers4

0

That would be

Opt_TDTD = (Vi_TDO1 != "TD") && (Vi_TDO2 != "TD") && (Vi_TDO3 != "TD") && (Vi_TDO4 != "TD") && (Vi_TDO5 != "TD") && (Vi_TDO6 != "TD") && (Vi_TDO7 != "TD") && (Vi_TDO8 != "TD") && (Vi_TDO9 != "TD") && (Vi_TD10 != "TD") && (Vi_TD11 != "TD") && (Vi_TD12 != "TD")
    ? "NO" : "YES"

0

Maybe you can think of a easier solution for your variable checking ^^

But here is the solution:

const result = ((Vi_TDO1 != "TD") && (Vi_TDO2 != "TD") && (Vi_TDO3 != "TD") && (Vi_TDO4 != "TD") && (Vi_TDO5 != "TD") && (Vi_TDO6 != "TD") && (Vi_TDO7 != "TD") && (Vi_TDO8 != "TD") && (Vi_TDO9 != "TD") && (Vi_TD10 != "TD") && (Vi_TD11 != "TD") && (Vi_TD12 != "TD")) ? "NO" : "YES";
FloWy
  • 934
  • 6
  • 14
0

Can use an array with every

Opt_TDTD = [Vi_TDO1, Vi_TDO2, Vi_TDO3, Vi_TDO4, Vi_TDO5, Vi_TDO6,
            Vi_TDO7, Vi_TDO8, Vi_TDO9, Vi_TD10, Vi_TD11, Vi_TD12]
              .every(x => x === 'TD') ? 'YES' : 'NO'
epascarello
  • 204,599
  • 20
  • 195
  • 236
0

this Would work

const tdsArray = [Vi_TDO1, Vi_TD02,...,Vi_TD12] 
const Opt_TDTD = tdsArray.every(td => td !== 'TD') ? "NO" :  "YES";
console.log(Opt_TDTD);