Многомерные типизированные массивы
Часть раздела Введение в TypeScript путешествия по JavaScript на Coddy. Урок 19 из 73.
TypeScript позволяет создавать многомерные массивы для обработки такого рода структурированных данных с полной типобезопасностью.
Многомерный массив — это, по сути, массив массивов. Самый распространенный пример — это двумерный массив, который можно представить в виде сетки или матрицы. Чтобы типизировать двумерный массив в TypeScript, используется синтаксис Type[][]:
let grid: number[][] = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
let gameBoard: string[][] = [
["X", "O", "X"],
["O", "X", "O"],
["X", "O", "X"]
];Для доступа к элементам многомерного массива используются несколько наборов квадратных скобок. Первый индекс выбирает строку, а второй индекс — столбец в этой строке:
let matrix: number[][] = [[1, 2], [3, 4]];
console.log(matrix[0][1]); // 2 (первая строка, второй столбец)
console.log(matrix[1][0]); // 3 (вторая строка, первый столбец)TypeScript гарантирует, что каждый внутренний массив содержит только элементы указанного типа, предоставляя те же преимущества типобезопасности, что и в обычных массивах, но расширенные для работы со сложными сеточными структурами данных.
Задание
ЛегкоСоздайте двумерный массив с именем gameGrid, который может хранить числа, и инициализируйте его как матрицу 3x3 со следующими значениями:
- Первая строка:
1,2,3 - Вторая строка:
4,5,6 - Третья строка:
7,8,9
Создайте еще один двумерный массив с именем chessBoard, который может хранить строки, и инициализируйте его как матрицу 2x2 со следующими значениями:
- Первая строка:
"white","black" - Вторая строка:
"black","white"
Обратитесь к элементу во второй строке первого столбца массива gameGrid и выведите его на печать.
Обратитесь к элементу в первой строке второго столбца массива chessBoard и выведите его на печать.
Выведите каждое значение на отдельной строке в порядке, указанном выше.
Попробуйте сами
// TODO: Напишите свой код здесь
// Создайте двумерный массив gameGrid (матрица 3x3 с числами 1-9)
// Создайте двумерный массив chessBoard (матрица 2x2 со строковыми значениями)
// Получите доступ и выведите элемент во второй строке, первом столбце gameGrid
// Получите доступ и выведите элемент в первой строке, втором столбце chessBoardВ этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Введение в TypeScript
1Начало работы с TS
Что такое TypeScript?Зачем использовать TypeScript?Ваш первый код на TypeScriptПроцесс компиляции и ошибкиИтоги: Введение в TS4Работа с функциями
Типизация параметров и возвращаемых значенийТипизация стрелочных функцийТип возвращаемого значения 'void'Необязательные параметры с '?'Значения параметров по умолчаниюТипизация Rest-параметровОпределение типов функцийИтоги: Создание типизированных функций2Основные типы
Базовые типы: str, num, booleanТип 'any': лазейкаТип 'unknown'Работа с 'null' и 'undef'Вывод типов в действииЯвные аннотации типовИтоги: Практика по основным типам5Типы: псевдонимы, объединения и пересечения
Псевдонимы типов для примитивовТипы объединения ('|')Работа с типами объединенияЛитеральные типыТипы пересечения ('&')Комбинирование псевдонимов типовИтоги: продвинутые комбинации типов3Структуры данных: массивы и кортежи
Типизированные массивыМодификатор 'readonly' для массивовЧто такое кортеж?Объявление кортежей и доступ к нимДеструктуризация кортежейКортежи readonlyМногомерные типизированные массивыОператор spread с массивамиИтоги: массивы и кортежиПотренируйтесь самостоятельно: Песочница TypeScript