operatori matematici

Vorbind despre prioritățile, asociativitatea, și alte probleme minore, putem începe să discutăm ei înșiși operatorii. Această secțiune descrie operatorii aritmetici:

Plus (+)
Operator „Plus“, adaugă operanzi numerice sau concatenează siruri de caractere. Dacă unul dintre operanzi este un șir de caractere, celălalt operand este convertit într-un șir de caractere și concatenare efectuate. Operanzi obiecte sunt convertite la numărul sau rândurile care pot fi stivuite sau concatenate. Transformarea este realizată folosind valueOf () și / sau toString ().

Substracție (-)
În cazul în care „minus“ este folosit ca un operator binar, acesta scade al doilea operand din prima. Dacă specificați operanzi non-numerice, acesta încearcă să le converti la numere.

Multiplicare (*)
* Operatorul multiplică săi doi operanzi. operanzi nenumerică, el încearcă să se convertească la numere.

Divizia (/)
Operatorul / imparte primul operand de-al doilea. Încercările de a converti operanzi non-numerice la numere. Cei care sunt utilizate pentru limbaje de programare, numere întregi distinctive și numere reale, se pot aștepta să primească un rezultat întreg, atunci când un număr întreg de împărțirea altul.

modulo (%)
% Operator calculează un reziduu obținut prin împărțirea întreagă a primul la al doilea operand. Dacă specificați operanzi non-numerice, operatorul încearcă să le converti la numere. Semnul rezultat se potrivește cu semnul primului operand. De exemplu, 5% 2 oferă 1.
Operatorul modulo diviziune este aplicat în mod obișnuit cu operanzi întregi, dar funcționează și pentru valorile reale. De exemplu,% -4.3 -0.1 2.1 dă rezultatul.

minus unar (-)
Atunci când este utilizat mai puțin ca un operator unar înainte de un singur operand, se efectuează unară schimbare semn funcționare. Cu alte cuvinte, se convertește o valoare pozitivă și vice-versa negativ. În cazul în care nu este un operand număr, operatorul încearcă să-l transforme într-un număr.

În acest cod, operatorul „plus“ nu face nimic; rezultatul muncii sale este valoarea argumentului său.


Cu toate acestea, se convertește argumente nenumerică în număr. În cazul în care argumentul nu poate fi convertit, returnează NaN.

Increment (++)
Acest operator incremente (adică incremente) unic operandului, care trebuie să fie o variabilă, element al unei proprietăți matrice sau obiect. În cazul în care valoarea acestei variabile, element de matrice, sau proprietate nu este un număr, operatorul încearcă mai întâi să-l convertească la un număr. Comportamentul exact al acestui operator depinde de poziția sa față de operandului. Dacă l-ai pus în fața operanzi (operatorul incrementare prefix), apoi se adaugă la 1 operand, iar rezultatul este valoarea crescută a operandului. În cazul în care este plasat după operanzi (increment postfix), apoi 1 se adaugă la operandul, dar rezultatul este valoarea inițială a operandului. Dacă o valoare incrementată nu este un număr, acesta este convertit în procesul de calcul un număr.

De exemplu, următorul cod setează variabilele i și j este egal cu 2:
i = 1;
j = ++ i;
Și pune i 2 și j la 1:
i = 1;
j = i ++;

Această afirmație în ambele forme ale sale este cel mai des utilizat pentru a crește contorul, ciclul de control.

Decrementare (-)
Acest operator decrements (adică scade cu 1) un singur operand numeric, care poate fi o variabilă, un element de matrice sau un obiect de proprietate. Dacă valoarea acestui, element de variabilă sau caracteristică nu este un număr, operatorul încearcă mai întâi să-l convertească la un număr. În ceea ce privește operatorul ++, comportamentul exact al operatorului -zavisit din poziția sa în raport cu operandului. Fiind pus în fața operandul, reduce operandul și returnează valoarea redusă. Dupa ce reduce operandul Operandul dar returnează valoarea inițială.