Свойство length
Свойство length позволяет узнать и установить длину массива.
Синтаксис
массив.length;
Пример
Давайте выведем длину массива arr :
let arr = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]; console.log(arr.length);
Результат выполнения кода:
Пример
Давайте сократим массив до 2 -х элементов:
let arr = [‘a’, ‘b’, ‘c’, ‘d’, ‘e’]; arr.length = 2; console.log(arr);
Результат выполнения кода:
Смотрите также
- свойство length ,
которое позволяет узнать длину строки - метод find ,
который ищет элемент в массиве
Array.length
Свойство length объекта, который является экземпляром типа Array , устанавливает или возвращает число элементов этого массива. Значение данного свойства 32-битное безнаковое целое число, которое всегда численно больше чем самый наибольший индекс в массиве.
var items = ["shoes", "shirts", "socks", "sweaters"]; items.length; // возвращает 4
Синтаксис
arr.length
Описание
Свойство length является целым числом с положительным знаком и значением, меньшим чем 2 в степени 32 (232).
var namelistA = new Array(4294967296); //2 в 32 степени = 4294967296 var namelistC = new Array(-100); //отрицательная величина console.log(namelistA.length); //RangeError: Invalid array length console.log(namelistC.length); //RangeError: Invalid array length var namelistB = []; namelistB.length = Math.pow(2, 32) - 1; //устанавливает длину массива меньше 2 в 32 степени console.log(namelistB.length); //4294967295
В любой момент вы можете установить свойство length для обрезки массива. Когда вы расширяете массив, изменяя его свойство length , реальное количество элементов в массиве увеличивается; например, если вы установите свойство length в 3, когда оно равно 2, массив будет из 3 элементов, где значение третьего элемента будет равно undefined .
var arr = [1, 2, 3]; printEntries(arr); arr.length = 5; // устанавливает длину массива 5. printEntries(arr); function printEntries(arr) var goNext = true; var entries = arr.entries(); while (goNext) var result = entries.next(); if (result.done !== true) console.log(result.value[1]); goNext = true; > else goNext = false; > console.log("=== printed == token punctuation">); > // 1 // 2 // 3 // === printed === // 1 // 2 // 3 // undefined // undefined // === printed ===
Таким образом, свойство length ничего не говорит о количестве определённых значений в массиве. Также смотрите раздел Взаимосвязь свойства length с числовыми свойствами.
| Атрибуты свойства Array.length | |
|---|---|
| Записываемое | да |
| Перечисляемое | нет |
| Настраиваемое | нет |
Примеры
Пример: итерирование по массиву
В следующем примере массив numbers итерируется до значения свойства length , показывающего, сколько элементов содержит массив. Значение каждого элемента удваивается.
var numbers = [1, 2, 3, 4, 5]; for (var i = 0; i numbers.length; i++) numbers[i] *= 2; > // Массив numbers теперь равен [2, 4, 6, 8, 10];
Пример: сокращение массива
Следующий пример сокращает массив statesUS до длины в 50 элементов, если текущая длина массива больше 50.
if (statesUS.length > 50) statesUS.length = 50; >
Спецификации
| Specification |
|---|
| ECMAScript Language Specification # sec-properties-of-array-instances-length |
Совместимость с браузерами
BCD tables only load in the browser
Смотрите также
Found a content problem with this page?
- Edit the page on GitHub.
- Report the content issue.
- View the source on GitHub.
This page was last modified on 4 авг. 2023 г. by MDN contributors.
Your blueprint for a better internet.
MDN
Support
- Product help
- Report an issue
Our communities
Developers
- Web Technologies
- Learn Web Development
- MDN Plus
- Hacks Blog
- Website Privacy Notice
- Cookies
- Legal
- Community Participation Guidelines
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998– 2023 by individual mozilla.org contributors. Content available under a Creative Commons license.
Длина массива JS
Длина массива (размер) — это количество элементов в массиве JavaScript.
Для определения длины есть стандартное свойство length . Его можно вызвать как у переменной, в которой содержится массив, так и у самого массива:
const arr = ['Samsung', 'Apple', 'LG', 'Huawei']; console.log(arr.length); // 4 console.log(['Samsung', 'Apple', 'LG', 'Huawei'].length); // 4
Значение пустой строки » , undefined , null также будут учтены:
const arr = ['Samsung', '', 'Apple', undefined, 'LG', null, 'Huawei']; console.log(arr.length); // 7
Часто данное свойство используется при переборе массива с помощью цикла for / while
const arr = ['Samsung', 'Apple', 'LG', 'Huawei']; for (let i = 0; i < arr.length; i++) < console.log(i, arr[i]); >let i = 0; while (i
Данный код вернет такой результат в консоли:
0 'Samsung' 1 'Apple' 2 'LG' 3 'Huawei'
Есть конечно сейчас более удобные и часто используемые метода для перебора массива, такие как forEach() .
Также данное свойство можно использовать для добавления элемента в массив.
Как задать размер массива?
Чтобы создать пустой массив с определенным количеством пустых элементов, мы можем использовать следующий код:
const arr = new Array(2); console.log(arr); // [empty, empty] console.log(arr.length); // 2
Ваши вопросы и комментарии:
Свежие записи
- MySQL IS NULL — проверка поля на NULL
- MySQL LIKE — поиск по паттерну
- Between MySQL — оператор для выборки по диапазону значений
- MySQL IN и NOT IN — несколько условий
- MySQL WHERE — синтаксис и примеры
Копирование материалов разрешено только с ссылкой на источник Web-Dev.guru
2023 © Все права защищены.
Как узнать на javascript размер массива


Для вычисления на javascript размера массива объектов используется свойство массива length.
var arr = ["first", "second"]; console.log(arr.length); // 2
Массивы в javascript могут иметь пропуски в индексах. Например
var arr = []; arr[0] = "first"; arr[4] = "second";
Свойство length возвращает максимальный индекс массива + 1. Т.е. в приведенном примере length = 5.
Вычисление на javascript количества элементов в массиве
Если нужно посчитать количество реально существующих элементов массива, нужно воспользоваться следующей функцией:
Array.prototype.count = function()
var arr = []; arr[0] = "first"; arr[4] = "second"; console.log(arr.count()); //2
Так же в свойство length можно присваивать значение. Это позволяет уменьшить длину существующего массива.
var arr = ["first", "second", "third"]; arr.length = 2; console.log(arr); // ["first", "second"]
Вычисление на javascript размера массива в байтах
Массивы являются обычными объектами, так что вычисление размера массива в байтах ничем не отличается от вычисления размера любого другого объекта. К сожалению, javascript не предоставляет API для вычисления размера, так что придется считать самостоятельно. Делается это следующим образом: обходим все свойства объекта, если свойство примитивного типа — добавляем к общему результату размер экземпляра этого типа, если в свойстве лежит объект — рекурсивно считаем его размер.
function sizeOf(obj) < var bytes = 0; if(obj !== null && obj !== undefined) < switch(typeof obj) < case 'number': bytes += 8; break; case 'string': bytes += obj.length * 2; break; case 'boolean': bytes += 4; break; case 'object': for(var key in obj) < bytes += sizeOf(obj[key]); >break; > > return bytes; >;
Метод не точный и имеющий множество проблем — например есть вероятность уйти в бесконечный цикл.