Mnożnicze operatory ECMAScript

Operator mnożenia w ECMAScript działa podobnie jak w językach programowania takich jak Java, C, Perl.

Należy zauważyć, że operator mnożenia ma również pewne funkcje automatycznej konwersji.

Operator mnożenia

Działanie mnożenia jest oznaczone gwiazdką (*), używaną do mnożenia dwóch liczb.

Gramatyka mnożenia w ECMAScript jest taka sama jak w języku C:

var iResult = 12 * 34

Jednak w przypadku specjalnych wartości mnożenie w ECMAScript ma również pewne specjalne zachowanie:

  • Jeśli wynik jest zbyt duży lub zbyt mały, wynikem jest nieskończoność lub -nieskończoność.
  • Jeśli któryś z operandów jest NaN, wynik wynosi NaN.
  • Nieskończoność mnożona przez 0 wynosi NaN.
  • Nieskończoność mnożona przez każdą liczbę inną niż 0 wynosi nieskończoność lub -nieskończoność.
  • Nieskończoność mnożona przez nieskończoność wynosi nieskończoność.

Uwaga:Jeśli operandy są liczbami, wykonuje się zwyczajną operację mnożenia, tzn. dwa dodatnie lub dwa ujemne liczby są liczbami dodatnimi, a różne znaki operandów dają wynik ujemny.

Operator dzielenia

Operator dzielenia jest oznaczony przez ukośnik (/), używa się go do dzielenia drugiego operanda przez pierwszy:

var iResult = 88 /11;

Podobnie jak w przypadku operatora mnożenia, w przypadku specjalnych wartości operator dzielenia ma również specjalne zachowanie:

  • Jeśli wynik jest zbyt duży lub zbyt mały, wynikem jest nieskończoność lub -nieskończoność.
  • Jeśli któryś z operandów jest NaN, wynik wynosi NaN.
  • Dzielenie nieskończoności przez nieskończoność wynosi NaN.
  • Nieskończoność dzielona przez każdą liczbę wynosi nieskończoność.
  • 0 dzielona przez każdą liczbę inną niż nieskończoność wynosi NaN.
  • Nieskończoność dzielona przez każdą liczbę inną niż 0 wynosi nieskończoność lub -nieskończoność.

Uwaga:Jeśli operandy są liczbami, wykonuje się zwyczajną operację dzielenia, tzn. dwa dodatnie lub dwa ujemne liczby są liczbami dodatnimi, a różne znaki operandów dają wynik ujemny.

Operator modulo

Operator dzielenia (reszty) jest oznaczony przez procent (%), sposób użycia wygląda następująco:

var iResult = 26%5; // równa się 1

Podobnie jak w przypadku innych mnożnych operatorów, dla specjalnych wartości operator modulo zachowuje się specjalnie:

  • Jeśli dzielnik jest nieskończonością, lub dzielnik jest 0, wynik wynosi NaN.
  • Dzielenie nieskończoności przez nieskończoność wynosi NaN.
  • Jeśli dzielnik jest nieskończonym liczbą, wynik wynosi dzielnik.
  • Jeśli dzielnik jest 0, wynik wynosi 0.

Uwaga:Jeśli operandy są liczbami, wykonuje się zwyczajną operację dzielenia, zwracając resztę z dzielenia.