2014-12-08 3 views
-1

Этот код работает нормально, но, это результаты "1number". Мое сомнение в том, как этот 'number' подходит? Любая помощь?JavaScript: как этот номер пришел как результат

var x = 1; 
    if (function f(){}) { 
    x += typeof f; 
    } 
    x; 
    alert(x); 
+0

Вы добавляете 1 и «число». Это все. –

+3

Зачем вам это писать? –

+4

Я думаю, что это должно быть '1undefined'. – dfsq

ответ

1

Более конкретно, вы объединяете 1 со строкой «число».

typeof возвращает строку, а при вызове + с 1, это предполагает, что вы хотите, чтобы рассматривать 1 как строку и плавит их вместе.

+0

Но, как говорит @David, он дает '1undefined'. – ruffin

+2

Он получит 1 номер, если у него есть числовая переменная с именем 'f', которую мы не видим здесь. – dsharew

+0

Да, все, что я мог понять, это то, что код не соответствует контексту. Но почему не 'f' подъемник? У 'if' есть своя область? Это интересно. – ruffin

Смежные вопросы