if (typeof foo !== 'undefined') {
// Now we know that foo is defined, we are good to go.
}
typeof
вычисляется в true
или false
на основании того, определяется или нет переменная foo
.TypeOf логического выражения с оператором сравнения
Но, скажем, если foo !== 'undefined'
вычисляется в true
, то typeof
из true
должен вычисляться 'boolean'
. Почему он оценивается до true
или false
?
Для справки: 'typeof (typeof foo! == 'undefined')' будет делать то, что думает OP. – ajm