2016-07-29 12 views
1

Betrachten Sie diesen Code:Knoten js - Speichern großer Zahlen in Arraybuffer

var b = new ArrayBuffer(2); 

b[0] = 1; 
b[1] = 23234322442; 

Die Zahl in Zelle Nummer 1 ist deutlich größer als 1 Byte, noch die Arraybuffer hat kein Problem, es zu speichern, und wenn ich drucken b zu Konsole Ich kann sehen, die Nummer ist da. Was ist die Erklärung?

Danke.

Antwort

1

Das ArrayBuffer-Objekt wird verwendet, um einen generischen, binären Datenpuffer mit fester Länge darzustellen. Sie können den Inhalt eines ArrayBuffers nicht direkt bearbeiten. Stattdessen erstellen Sie eines der typisierten Array-Objekte oder ein DataView-Objekt, das den Puffer in einem bestimmten Format darstellt, und verwenden Sie diesen, um den Inhalt des Puffers zu lesen und zu schreiben. more

Also, ich glaube, wenn Sie b[1] rufen dann nicht wahr zweites Element des Puffers eingestellt. Sie setzen einfach Eigenschaft des Objekts und es kann alles sein (Nummer, String, Objekt, Array).