2012-08-25 12 views
8

Próbuję zrozumieć, co jest możliwe z operatorami binarnymi (tylko operatory binarne) w JavaScript. Do tej pory lista operatorów binarnych, które odkryłem, jest następująca. Pochodzą głównie od this list, ale brakuje ich?Lista wszystkich operatorów binarnych w JavaScript

Uwaga, prowadzę specjalnie tylko operatorów binarnych, które zgodnie ze źródłem wymienionym powyżej są zdefiniowane jako operatory binarne używane z dwoma obiektami (czy to jest dokładne?). Dodałem także dodatki z @samsamX.

+ //Add 
- //Subtract 
/ //Divided by 
* //Multiple 
% //Modulus 
< //Less than 
> //Greater than 
& //AND 
| //OR 
^ //XOR 
~ //Invert each bits 
<< //Move all bits onto the left 
>> //Move all bits onto the right 
>>> //Move all bits onto the right and fill left end with 0 
+0

istnieją również operator binarny dla kawałka, jak „|” (lub) i "&" dla i. –

+1

pierwszy wynik w google: http://web.eecs.umich.edu/~bartlett/jsops.html – devundef

+0

to wydaje się być przewodnikiem wideo wszystkich operatorów: http://bateru.com/news/2011/03/ javascript-binary-operations-the-easy-way/ – devundef

Odpowiedz

11

Kompletną listę znajdziesz w specification, w rozdziale wyrażenie. Ponieważ większość "normalnych" operatorów jest binarnych (patrz: definition at Wikipedia), nie są one wyraźnie wymienione jako takie (jak operatory jednoargumentowe i trójkowe).Są to:

  • Operatorzy multiplikatywne
    • * Operator
    • / Operator
    • % Operator
  • Dodatek Operatorzy
    • operator dodawania (+)
    • odejmowania Operator (-)
  • bitowe Przesunięcie Operatorzy
    • Lewy SHIFT Operatora (<<)
    • podpisanego PRAWY SHIFT Operator (>>)
    • Operator niepoprawnego przesunięcia w prawo (>>>)
  • operatory relacyjne
    • słabiej niż Operator (<)
    • Większa niż Operator (>)
    • słabiej niż lub równy Operator (<=)
    • Większego -than lub równy operatora (>=)
    • operator instanceof
    • in operatora
  • operatorów porównania
    • równości operatora (==)
    • łanie-Operator nierówności (!=)
    • Ścisłego równa operatora (===)
    • Ścisłego Czy -nie-równy Operator (!==)
  • Binary bitowe Operatorzy (&, ^, |)
  • binarne Logika Operatorzy (&&, ||)

Technicznie rzecz biorąc, również operatory przypisania i przecinek są binarne.

1
+ //Add 
- //Subtract 
/ //Divided By 
* //Multiple 
% //Modulus 
< //Less than 
> //Greater than 
! //Not 
& //And 
| //Or 
^ //Xor 
~ //Invert each bits 
<< //Move all bits onto the left 
>> //Move all bits onto the right 
>>> //Move all bits onto the right and fill left end with 0 
+2

'!' I '~' nie są operatorami binarnymi – Bergi

9

Dostępne są następujące operatory arytmetyczne obsługiwane przez język JavaScript.

Załóżmy Zmienna posiada 10 a zmienna B posiada 20 wówczas:

Enter image description here

Enter image description here

Enter image description here

Enter image description here

Enter image description here

Enter image description here

Here jest oryginalny link do strony.

+0

Wyrażenie warunkowe (zwane również "* operatorem trójkowym") jest * nie * operatorem binarnym. – Bergi

+0

@Bergi Pytanie zostało zmodyfikowane po tym wpisie. Pierwotnie mówiono o wszystkich operatorach. –

+0

OK, ale potem zapomniałeś wszystkich operatorów jednoargumentowych, takich jak '!' Lub 'new' ... – Bergi

Powiązane problemy