Laut MSDN kann ich Uint32Array
auf drei Arten erstellen:
new Uint32Array( length );
new Uint32Array( array );
new Uint32Array( buffer, byteOffset, length );
Erste und zweite Methode funktionieren gut, aber die dritte funktionierte nicht für mich. Was ist falsch in diesem Code?
%Vor% Das funktioniert gut, aber natürlich byteOffset = 0
.
Die Dokumentation scheint hier falsch zu sein, da length
keine Anzahl von Bytes ist, sondern die Anzahl der 32-Bit-Ganzzahlen, die Uint32Array
enthält.
Ausstellung A
Ändern des Codes in var uint32s = new Uint32Array(buffer, 4, 1);
funktioniert.
Anlage B
Die Dokumentation für Uint32Array in MDN besagt, dass length
eine Anzahl von Elementen und nicht Bytes darstellt.
Ausstellung C
Es macht nicht wirklich Sinn, dass der Konstruktor eine Länge in Bytes akzeptiert. Was passiert, wenn length
kein Vielfaches von 4 ist?
Tags und Links javascript typed-arrays