Оператор двойной тильды в JavaScript (~~)
В JavaScript оператор ~~ — это оператор приведения типа, который удаляет все после десятичная точка числа. Это отличается от оператора ~, который представляет собой побитовый оператор НЕ, который инвертирует биты значения.
Операция
Оператор работает, сначала преобразуя его операнд для 32-битного целого числа со знаком. Это означает, что даже если операнд является числом с плавающей запятой или строкой, внутри он будет рассматриваться как целое число. Оператор эффективно выполняет следующее:
Полезность
Хотя оператор ~~ может показаться простой заменой Math.floor или Math.ceil, он имеет некоторые ограничения:
Поэтому обычно рекомендуется использовать x (унарный плюс) или Number(x) для приведения типа, и Math.floor или Math.ceil для округления.
Пример
Рассмотрим число -43.2:
Как видите, ~~ округляет в сторону нуля, а Math.floor округляет в меньшую сторону. Такое поведение может быть полезно в определенных сценариях, например при усечении числа без использования десятичной точки.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3