TypeError: invalid arguments

Fehlermeldung

TypeError: invalid arguments (Firefox)

Fehlertyp

Was ist falsch gelaufen?

Der Typed Array Konstruktor erwartet entweder

  • eine L├Ąnge,
  • ein anderes Typed Array,
  • Array ├Ąhnliche Objete,
  • iterierbare Objekte oder
  • ein ArrayBuffer Objekt,

um ein neues Typed Array zu erstelltn. Andere Argumente im Konstruktor erstellen kein valides Typed Array.

Beispiele

Typed Arrays, zum Beispiel ein Uint8Array, k├Ânnen nicht von einem String erstellt werden. Tats├Ąchlich k├Ânnen String nicht in typisierten Arrays enthalten sein.

var ta = new Uint8Array("nope");
// TypeError: invalid arguments

Verschiedene Wege um ein valides Uint8Array Objekt zu erstellen:

// From a length
var uint8 = new Uint8Array(2);
uint8[0] = 42;
console.log(uint8[0]); // 42
console.log(uint8.length); // 2
console.log(uint8.BYTES_PER_ELEMENT); // 1

// From an array
var arr = new Uint8Array([21,31]);
console.log(arr[1]); // 31

// From another TypedArray
var x = new Uint8Array([21, 31]);
var y = new Uint8Array(x);
console.log(y[0]); // 21

// From an ArrayBuffer
var buffer = new ArrayBuffer(8);
var z = new Uint8Array(buffer, 1, 4);

// From an iterable
var iterable = function*(){ yield* [1,2,3]; }();
var uint8 = new Uint8Array(iterable);
// Uint8Array[1, 2, 3]

Siehe auch