Как это работает? Наша теория заключалась в том, что использование такого оператора приводит число к целому числу, таким образом удаляя дробную часть
blockquote>. Все побитовые операции, кроме сдвига без знака,
>>>
, работают с подписанными 32-битными целыми числами , Таким образом, использование побитовых операций преобразует float в целое число.Имеет ли он какие-либо преимущества перед выполнением Math.floor? Может, это немного быстрее? (каламбур не предназначен)
blockquote>http://jsperf.com/or-vs-floor/2 выглядит немного быстрее
Есть ли у него какие-то недостатки? Может быть, в некоторых случаях это не работает? Ясность очевидна, так как мы должны были понять это, и хорошо, я задаю этот вопрос.
blockquote>
- Не пройдет jsLint.
- Только 32-битные знаковые целые числа
- Нечетное сравнительное поведение:
Math.floor(NaN) === NaN
, а(NaN | 0) === 0
Вы можете использовать FireBug Profiling Tool в FF и Web Developer Tool в IE8 или Developer Tools в WebKit
РЕДАКТИРОВАТЬ:
Просто любопытно, что вы хотите делать с этими событиями?