TypeScriptУрок 3 из 16

Массивы и кортежи

Массив хранит сколько угодно значений одного типа. Кортеж — массив фиксированной длины, где у каждой позиции свой тип.

Главное

  • Две записи одного и того же типа: number[] и Array<number>.
  • В массив чисел нельзя положить строку: push("ten") подсветится ошибкой.
  • Кортеж [string, number] — ровно два элемента: сначала строка, потом число.
  • Кортеж удобно раскладывать на переменные: const [name, age] = entry.

Пример

const scores: number[] = [7, 9, 10];const tags: Array<string> = ["ts", "web"];scores.push(8);// scores.push("ten"); // error: string is not assignable to number const point: [number, number] = [3, 4];const entry: [string, number] = ["Anna", 25];const [who, age] = entry; console.log(`Scores: ${scores.join(", ")}; tags: ${tags.length}`);console.log(`${who} is ${age}, point x = ${point[0]}`);

scores.push(8) проходит, а push("ten") — нет. Кортеж entry разложен на две переменные, и у каждой правильный тип: who — string, age — number.

Задание

Как пользоваться редактором⌘ Enter или Ctrl Enter — запустить код, ⇧ ⌘ Enter — проверить задание.Tab и Shift Tab сдвигают строку или выделение; Esc, затем Tab — выйти из редактора.Проверка сравнивает то, что напечатала программа, с заданием; пробелы в конце строк не важны.После двух неудачных проверок можно открыть решение. Ваш код сохраняется в этом браузере.

Укажите тип корзины [string, number][], пройдите по ней циклом for...of, выведите каждую позицию строкой вида «Coffee: 4», а в конце — «Total: 12».

Вывод

Здесь появится то, что напечатает программа.