apps-script-utils (Deutsch) 2.1.1 Help

requireConsistent2DArray

function requireConsistent2DArray<T>(value: unknown, message?: string): T[][];

Die strenge Entsprechung zu require2DArray: der Wert muss ein nicht-leeres Array aus Arrays sein und jede Zeile muss so breit sein wie die erste.

Weichen die Zeilen ab, nennt die Standardmeldung die betroffene Zeile und beide Breiten — was man braucht, um den Aufruf zu reparieren, und genau das, was Range#setValues verschweigt. Eine eigene message ersetzt die Standardmeldung in beiden Fehlerfällen.

Parameter

Parameter

Typ

Beschreibung

value

unknown

Der zu prüfende Wert.

message (optional)

string

Die Meldung der Ausnahme. Ohne Angabe wird eine Standardmeldung verwendet, die die Abweichung beschreibt.

Rückgabewert

T[][] — denselben Wert, typisiert als zweidimensionales Array.

Ausnahmen

Ausnahme

Bedingung

IllegalArgumentException

der Wert ist kein nicht-leeres Array aus Arrays.

IllegalArgumentException

die Zeilen sind nicht alle gleich lang.

Beispiele

Eine Matrix, die sicher zu schreiben ist

/** * Accepts only a matrix whose rows are all the same width. The default message * names the offending row and both widths. */ export function writeMatrix(sheet: GoogleAppsScript.Spreadsheet.Sheet, values: unknown): void { const rows = requireConsistent2DArray<string>(values); sheet.getRange(1, 1, rows.length, rows[0].length).setValues(rows); }
function writeMatrix(sheet, values) { const rows = requireConsistent2DArray(values); sheet.getRange(1, 1, rows.length, rows[0].length).setValues(rows); }

Die Meldung nennt die betroffene Zeile

requireConsistent2DArray([ [1, 2], [3, 4] ]); // => [[1, 2], [3, 4]] requireConsistent2DArray([[1, 2], [3]]); // throws IllegalArgumentException: // Expected every row to have 2 columns, but row 1 has 1. requireConsistent2DArray([1, 2], "rows must be a matrix"); // throws IllegalArgumentException: rows must be a matrix

Siehe auch

Quellcode

src/lang/array/requireConsistent2DArray.ts

23 September 2026

Diese Dokumentation wurde mit KI (Claude) aus dem Quellcode der Bibliothek erzeugt.