en.javascript.info/1-js/2-first-steps/10-bitwise-operators/2-check-integer/solution.md
Ilya Kantor 87bf53d076 update
2014-11-16 01:40:20 +03:00

578 B
Raw Blame History

Один из вариантов такой функции:

//+ run
function isInteger(num) {
  return (num ^ 0) === num;
}

alert( isInteger(1) ); // true
alert( isInteger(1.5) ); // false
alert( isInteger(-0.5) ); // false

Обратите внимание: num^0 -- в скобках! Это потому, что приоритет операции ^ очень низкий. Если не поставить скобку, то === сработает раньше. Получится num ^ (0 === num), а это уже совсем другое дело.