Javascript поддерживает чтение и запись в двоичные массивы с интерфейсом typed array .
По сути, он создает буфер памяти двоичных данных, а затем считывает эти двоичные данные через «представление».Это представление сообщает браузеру, сколько бит данных должно быть прочитано за один раз, и делает из него массив ..
Например, биты 0000000100000001 будут выглядеть так в разных представлениях:
// 8 bit (char) array
charArray[0] = 1;
charArray[1] = 1;
// 16 bit (short int) array
intArray[0] = 257;
Для проекта, над которым я работаю, мне нужно хранить только 1 бит данных за раз, и размер файла является проблемой.Наименьший размер встроенного массива в Javascript - это массив char, и использование массива char для простого сохранения либо 1, либо 0 будет пустой тратой пространства, поскольку в нем должны храниться все начальные 0.
Мой вопрос: Каким был бы самый быстрый способ с точки зрения производительности читать двоичные данные по 1 биту в Javascript за раз?
Я знаю, что javascript поддерживает побитовые операторы , но я могуничего не нашел об их производительности.Единственное, о чем я могу подумать, - это использовать массив символов и написать собственную логику, которая бы вычитала правильное число для чтения только одного бита за раз.
Любая помощь будет принята с благодарностью.