x <<= y (x = x << y)
x >>= y (x = x >> y)
x >>>= y (x = x >>> y)
x &= y (x = x & y)
x ^= y (x = x ^ y)
x |= y (x = x | y)
Was machen diese verschiedenen Betreiber?
Bit-Verschiebung links bzw. rechts. Wenn Sie sich den linken Operanden als eine binäre Bitfolge vorstellen, verschieben Sie diese um die Anzahl der Bits, die durch den rechten Operanden angezeigt werden, nach links oder rechts.
%Vor% Diese sind bitweise und , &
und |
als Gegenstücke zu &&
und ||
vorstellen, außer dass sie ihre Operanden als Bitvektoren behandeln und die logischen Operationen für jedes der Bits ausführen. Es gibt keinen ^^
Operator, aber diese Operation ist "xor" oder " exclusive oder ". Sie können sich "a xor b" als "a oder b, aber nicht beide" vorstellen.
Hier ist ein Versuch, die Dinge für Anfänger sehr einfach zu machen.
Voraussetzungen
Sie müssen mit dem binären Zahlensystem (Zahlen aus zwei Ziffern) vertraut sein. Wenn Sie nicht sind, dann überprüfen Sie diesen Link zuerst: Ссылка . Falls die vorherige Verbindung unterbrochen wird, kann diese Antwort ein wenig helfen: Ссылка .
Um herauszufinden, wie diese Operatoren funktionieren, müssen Sie wissen, welche Bitfolge hinter den Zahlen steht, die an der Operation beteiligt sind. Danach sollten Sie in der Lage sein, die folgenden Dinge zu verstehen.
Erinnerung
Dezimalziffern und ihre binären Schreibweisen:
%Vor% Was machen >>>
, >>
und <<
?
Diese Operatoren verschieben eine Bitfolge nach links oder rechts.
%Vor% Was machen &
, |
und ^
?
Diese Operatoren kombinieren die Bits zweier Zahlen, um eine neue Zahl zu erstellen.
%Vor% Wie funktioniert &
?
Für jedes Bitpaar: Wenn mindestens eines der beiden Bits 0 ist, ist das resultierende Bit 0. Wenn keines der beiden Bits 0 ist, ist das resultierende Bit 1.
%Vor% Wie funktioniert |
?
Für jedes Bitpaar: Wenn mindestens eines der beiden Bits 1 ist, ist das resultierende Bit 1. Wenn keines der beiden Bits 1 ist, ist das resultierende Bit 0.
%Vor% Wie funktioniert ^
?
Für jedes Bitpaar: Wenn die zwei Bits verschieden sind, ist das resultierende Bit 1. Wenn die zwei Bits gleich sind, ist das resultierende Bit 0.
%Vor%Tags und Links javascript bit-manipulation operators