2015-05-08 3 views
2

Я только что нашел код ниже.Оператор «| =» в JS (никогда не видел раньше)

var loadComplete = 0; 
window.onload = function(){ 
    loadComplete |= 1; 
}; 

Я никогда не видел «| =» как оператор. Кроме того, я обдумал это, но, похоже, нет примера.

+6

такой же, как 'loadComplete = loadComplete | 1; 'где' | 'является [поразрядным] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators) ИЛИ –

+2

Знаете ли вы, что делает' + = '? –

+0

@FelixKling я! Спасибо :) –

ответ

9

Подобно тому, как x += 1 эквивалентно x = x + 1, x |= 1 такая же, как x = x | 1, where | is the bitwise OR operator.

побитовое ИЛИ:

var a = 205; // In binary: 11001101 
var b = 45; // In binary: 00101101 
var c = a | b; // In binary: 11101101 

В принципе, если есть любые те, в колонке, она держит его , и преобразует обратно в десятичную нотацию, 237.

+1

Это или нет. Xor is^ – dman2306

+0

@ dman2306 haha ​​thanks :) Я продолжаю смешивать их все – user1823

Смежные вопросы