Однотипные данные?
Читал тему про массивы(javascript), там сказано, что в массивах желательно использовать
однотипные упорядоченные данные.
Что такое однотипные упорядоченные данные?
Функция относится к однотипным упорядоченным данным?
Ответы (1 шт):
Этот совет относится к разработке програм, где производительность работы с массивами имеет критическое значение. Он связан с внутренними особенностями движков JavaScript, в частности V8, на котором исполняется JavaScript в Chrome и Node.js.
Если кратко: под упорядоченностью подразумевается отсутствие дыр в массивах, а под однотипностью — отсутствие разных типов данных в массиве.
Если вы добавляете элементы в массив не подряд (например, добавили элемент по индексу 0, а потом по индексу 10), между ними образуется дыра (на месте элементов по индексам от 1 до 9), что мешает оптимизации работы с массивами.
Также движок различает некоторые типы данных в качестве элементов массивов: малые целые числа, дробные числа, остальные данные (например, строки). Если вы создали массив с малыми целыми, он будет оптимизирован под этот тип. Если вы добавите туда дробные, оптимизация будет снижена. Добавите строки — будет снижена ещё раз.
Если захотите почитать подробнее и читаете на английском, вот пост от разработчиков V8: https://v8.dev/blog/elements-kinds