что такое двумерный массив?
что такое ассоциативный массив?
и что такое обычный массив?
(что такое массив я знаю, объяснять не надо)
JavaScript
вопрос про массивы
Нормальный двумерный массив - это прямоугольная таблица, в ячейки которой записаны значения.
Доступ к элементу двумерного массива производится по комбинации двух индексов: номер строки (строка не в смысле "тестовая строка", а в смысле "ряд таблицы") и номер столбца (именно номер - индекс представляет собой последовательность подряд идущих целых чисел).
Но нормальных массивов в JS нет. Двумерный массив в JS или PHP - это одномерный массив, значениями которого являются одномерные массивы. Потому строки (ряды) в таком массиве могут иметь разную длину, или даже строки могут находиться вперемешку со скалярами. Кроме того, индексы массивов в этих языках могут идти не по порядку.
Ассоциативный массив - это массив, индексами которого являются НЕ целые числа, а строки. В некоторых языках (например, Go) индексами ассоциативных массивов могут быть массивы и структуры.
В JS ассоциативный массив всегда является объектом, а объект - ассоциативным массивом. Эти понятия эквивалентны. К любому элементу объекта можно обратиться как к элементу массива с индексом - названием поля.
В PHP любой массив является ассоциативным. Но есть различия в том, как целочисленные и строковые индексы обрабатываются при объединении массивов (в языке есть, как минимум, шесть разных способов слияния массивов).
Доступ к элементу двумерного массива производится по комбинации двух индексов: номер строки (строка не в смысле "тестовая строка", а в смысле "ряд таблицы") и номер столбца (именно номер - индекс представляет собой последовательность подряд идущих целых чисел).
Но нормальных массивов в JS нет. Двумерный массив в JS или PHP - это одномерный массив, значениями которого являются одномерные массивы. Потому строки (ряды) в таком массиве могут иметь разную длину, или даже строки могут находиться вперемешку со скалярами. Кроме того, индексы массивов в этих языках могут идти не по порядку.
Ассоциативный массив - это массив, индексами которого являются НЕ целые числа, а строки. В некоторых языках (например, Go) индексами ассоциативных массивов могут быть массивы и структуры.
В JS ассоциативный массив всегда является объектом, а объект - ассоциативным массивом. Эти понятия эквивалентны. К любому элементу объекта можно обратиться как к элементу массива с индексом - названием поля.
В PHP любой массив является ассоциативным. Но есть различия в том, как целочисленные и строковые индексы обрабатываются при объединении массивов (в языке есть, как минимум, шесть разных способов слияния массивов).
let двумерныйМассив = [
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
]
Двумерный, потому что элементы можно достать как по координатам...
arr[2][3] — 3-я строка, 4-й элемент, arr[0][2] — 1-я строка, 3-й элемент.
let ассоциативный = {
"Ключ1": "Значение",
"Ключ2": "Значение",
"Ключ3": "Значение",
}
Но никто не говорит "ассоциативный массив" - в JS это назвают объектом)
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
]
Двумерный, потому что элементы можно достать как по координатам...
arr[2][3] — 3-я строка, 4-й элемент, arr[0][2] — 1-я строка, 3-й элемент.
let ассоциативный = {
"Ключ1": "Значение",
"Ключ2": "Значение",
"Ключ3": "Значение",
}
Но никто не говорит "ассоциативный массив" - в JS это назвают объектом)
Двумерный массив - это массив в котором хранятся ещё массивы, поэтому они называются двумерными. Если ты про JS то там понятия ассоциативного массива нету как в PHP, там их называют объектами или в других ЯП ХЭШ-ТАБЛИЦАМИ, где данные хранятся в виде ключ-значения. Различие между объектами в JS и массивами, в том что в объектах можем хранить данные в виде ключ: значения и порядок их неважен, а массив имеет упорядоченную коллекцию данных пронумерованных индексами. Более подробно про массивы, объекты и их методах можно узнать на сайте learn.javascript.ru или в официальной документации к языку от https://developer.mozilla.org/ru/docs/Web/JavaScript
Похожие вопросы
- Помогите избавиться от пустых значений в массиве.
- Как найти максимальное значение в массиве массивов?
- Программирование Джава. Написать код на упорядочивание массивов.
- Нужна помощь в массиве JavaScript
- Сравнение двухмерного массива
- Массивы с длиной-что это
- напишите программу которая проверяет элементы массива на схожесть
- Заполнение массива случайными простыми числами в диапазоне от 2 до n
- Как правильно найти наибольший и наименьший значения массива?
- Получение массива из объектов, которые содержат имя cookie и ее значение
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Map