apps-script-utils (Русский) 2.1.1 Help

transpose

function transpose(arr: unknown): Array<Array<unknown>>;

Значение из строки i, столбца j входной матрицы оказывается в строке j, столбце i результата. Строится новая матрица; исходная не изменяется.

На вход нужна матрица с одинаковой длиной строк — правило, которое формулирует isConsistent2DArray, — потому что у рваной матрицы транспонирования не существует. Всё остальное приводит к обычному Error.

В таблице это преобразование между двумя формами одного диапазона: столбец, прочитанный как по одной строке на ячейку, и одна строка с теми же значениями.

Параметры

Параметр

Тип

Описание

arr

unknown

Матрица для транспонирования. Не изменяется.

Возвращает

Array<Array<unknown>> — новая матрица с переставленными строками и столбцами. Типы элементов сохраняются.

Исключения

Исключение

Условие

Error

входное значение не матрица или её строки разной длины.

Примеры

Строки становятся столбцами

transpose([ [1, 2, 3], [4, 5, 6] ]); // => [ // [1, 4], // [2, 5], // [3, 6] // ]

Запись списка в столбец

setValues wants one row per cell to fill a column, and a flat list is not that shape.

/** * Writes a flat list down a column. `setValues` wants one row per cell, which * is the transpose of a single row. */ export function writeColumn(sheet: GoogleAppsScript.Spreadsheet.Sheet, values: string[]): void { const column = transpose([values]); sheet.getRange(1, 1, column.length, 1).setValues(column); }
function writeColumn(sheet, values) { const column = transpose([values]); sheet.getRange(1, 1, column.length, 1).setValues(column); }

Некорректный вход

transpose([1, 2, 3]); // throws Error: Input must be a 2D array. transpose([[1, 2], [3]]); // throws Error: Input must be a 2D array.

Смотрите также

Исходный код

src/lang/array/transpose.ts

23 September 2026

Эта документация сгенерирована нейросетью (Claude) на основе исходного кода библиотеки.