Javascript One-Liner Отладка - PullRequest
       0

Javascript One-Liner Отладка

2 голосов
/ 06 июля 2011

После миллионного запуска рекурсивного однострочного 'ol factorial через jsperf я решил попробовать кое-что более интересное ... но это не работает!работать (и возвращать все более точное реальное значение для больших значений 'cap'), однако;при запуске с номерами 0-19 в консоли Chrome выдается следующий вывод:

1 (x2)
2
0
2 (x16)

Я в растерянности.При выполнении шага, учитывая стек вызовов, он явно рекурсивный, но не может вернуть ничего, кроме натуральных чисел.Есть мысли?

1 Ответ

6 голосов
/ 06 июля 2011

это ваш ^, который является побитовым xor, , а не оператором питания.Чтобы вызвать что-то: Math.pow(2, 10) == 1024

Все побитовые операции в JavaScript имеют неявное приведение к int, что означает 0^3.14159265358979323846 == 3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...