Почему typeof 1 / 0 возвращает NaN , а не number

Недавно начал учить JS и столкнулся с непоняткой. Если в переменную положить Infinity let a = 1 / 0 и проверить typeof то результат будет number. Если же не класть в переменную 1 / 0, а проверить сразу, то результат будет NaN. Почему так происходит?

let a = 1 / 0

console.log(a) // Infinity
console.log(typeof 1/ 0) // NaN
console.log(typeof a); // number

Ответы (1 шт):

Автор решения: AlexGlebe

Команда typeof принимает только один аргумент. И при делении строки на ноль возвращается NaN;

( typeof 1 ) / 0 => 'number' / 0 => NaN

Правильнее использовать скобки :

typeof ( 1 / 0 ) => 'number'
→ Ссылка