Манипуляции с битами в JS

Рассмотрим три операции — установка нужного бита в числе, сброс бита и инверсия.

У нас есть число N и номер бита i. Номер бита нумерует биты, начиная с нуля.

Прежде всего нам понадобится маска, с помощью которой мы произведем нужную нам операцию.

Это будет работать для 32-битных целых. Напоминаю, что в JS максимальная величина целого числа — 53 бита.

Установка бита

Следующая операция установит i-й бит:

Сброс бита

Следующая операция сбросит бит:

Переключение (инверсия) бита

Следующая операция инвертирует состояние i-го бита:

Мало букафф? Читайте есчо !

Управление размерами autocomplete ui widget в Drupal

Октябрь 25, 2023 г.

Попался мне UI баг, когда autocomplete слой с результатами поиска оказывался больше по ширине, чем input элемент, к которому он был прикреплен. Не ясен был алгоритм, по которому вычислялась ширина слоя. В одних случаях это происходило корректно, ...

Читать

Копируем в буфер обмена средствами javascript

Февраль 25, 2017 г.

Такая задача возникает не часто, но если вы заботитесь о пользователе, и помогаете ему скопировать в буфер обмена нужную информацию - то пользователь будет вам признателен. Так вы заработаете ещё один плюсик в копилку "юзабилити". Разберем ключевые ...

Читать

Прерывание цикла jQuery функции $.each()

Ноябрь 17, 2018 г.

Часто использую функцию jQuery API each(), но иногда требуется досрочно прервать выполнение этого цикла. Итак, как выйти из $.each()? Обработка происходит внутри функции, и на выходе требуется сигнализировать API что делать дальше. Перебор элементов ...

Читать

Инициализация карты google после изменения размеров контейнера карты

Февраль 2, 2018 г.

Столкнулся с данной проблемой в своей работе. Опишу более подробно. Объект Гугл карты, при изменении размеров контейнера, в котором рендерится карта, не актуализирует внутренние размеры поля, от которых зависит центровка. К примеру, при уменьшении ...

Читать
 

Комментарии к «Манипуляции с битами в JS»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: