+1 Punkt
76 Aufrufe

In Javascript gibt es keine Datentypen. Wie speichert man also 0x00 als Byte?

var x = 0x00 ? Geht das?

Gefragt von

1 Antwort

+3 Daumen
 
Beste Antwort

In JavaScript gibt es Datentypen. Das Programm

var a = 3;
var b = "3";
var c = [3];

console.log(typeof a);
console.log(typeof b);
console.log(typeof c);
console.log(typeof d);

gibt

        number
        string
        object
        undefined

aus.

Es gibt keinen Datentyp in Javascript, der speziell dazu gedacht ist, Bytes zu speichern.

> var x = 0x00 ? Geht das? 

Das geht. Aber dadurch wird x zu einer Zahl (0), dessen binäre Representation nicht notwendigerweise lediglich aus 0 besteht.

Verwende stattdessen Int8Array:

var ab = new Int8Array(1);
ab[0] = 0;

In dem ersten Byte des Arrays stehen jetzt alle Bits auf 0, weil die Zahl 0 im Zweierkomplement gespeichert wird.

Beantwortet von

Ich habe noch etwas nachgeforscht und doch noch einen Weg gefunden. Überarbeitete Antwort ist oben.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage sofort und kostenfrei

x
Made by a lovely community
...