I found this snippet of code in my travels in researching JSON:
var array = typeof objArray != \'object\' ? JSON.parse(objArray) : objArray;
<
It's the ternary conditional operator -- basically,
if (condition) {
a = 4;
}
else {
a = 5;
}
becomes
a = condition ? 4 : 5;
That’s called the conditional operator:
condition ? expr1 : expr2
If
condition
istrue
, the operator returns the value ofexpr1
; otherwise, it returns the value ofexpr2
.
It's called a Conditional (ternary) Operator. It's essentially a condensed if-else.
So this:
var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;
...is the same as this:
var array;
if (typeof objArray != 'object') {
array = JSON.parse(objArray);
} else {
array = objArray;
}
Just read it like this:
result = (condition) ? (true value) : (false value);
place what ever you like in the 3 operators.
As many has compared it to an IF.. THEN structure, so it is.