Negative Zahlen zu Binärstrings in JavaScript

Jeder weiß warum JavascriptNumber.toString Funktion repräsentiert negative Zahlen nicht richtig?

//If you try
(-3).toString(2); //shows "-11"
// but if you fake a bit shift operation it works as expected
(-3 >>> 0).toString(2); // print "11111111111111111111111111111101"

Ich bin wirklich neugierig, warum es nicht richtig funktioniert oder warum es so funktioniert. Ich habe es durchsucht, aber nichts gefunden, was hilft.

Antworten auf die Frage(3)

Ihre Antwort auf die Frage