Показать сообщение отдельно
  #20 (permalink)  
Старый 09.12.2011, 01:16
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от melky
в вышестоящем примере была проверка на положительное число, поэтому можно таки опустить.
?
alert( [-2/2 | 0 > 0, (-2/2 | 0) > 0] )
Сообщение от melky
спасибо за пример. почему так происходит ?
Согласно стандарту, у побитовых операторов есть такой шаг как вызов ToInt32. Т.е. каждый из аргументов приводится к 32-х битовому знаковому числу. В то время как обычно JS оперирует 64-битными числами двойной точности (IEEE 754). Отсюда и получается сужение множества значений.
Ответить с цитированием