JavaScript aritmeettinen

Numeroiden käsittelyn yleisimmät tilanteet ovat aritmeettiset.

JavaScript aritmeettiset laskin

Aritmeettiset laskin suorittavat aritmeettisia laskuja numeroyksiköillä tai muuttujilla.

Laskin Kuvaus
+ Lisäys
- Vähennys
* Kertolasku
** Potenssi (ES2016
/ Jako
% Kertoaja
++ Lisääminen
-- Vähennys

Aritmeettiset laskin

Tavallinen aritmeettinen laskenta käsittelee kaksi lukuja.

Nämä kaksi lukua voivat olla tekstituloa:

Esimerkki

var x = 7 + 8;

Kokeile itse

Tai muuttuja:

Esimerkki

var x = a + b;

Kokeile itse

Tai lauseke:

Esimerkki

var x = (7 + 8) * a;

Kokeile itse

Laskin ja toiminto

Aritmeettisissä laskuissa luvut kutsutaanToiminto.

(Kaksi toimintoa välillä suoritettava)Laskenta suoritetaanLaskinMääritelmä.

Toiminto Laskin Toiminto
7 + 8

Lisäys

LisäysLaskin (+)Lisäysluku:

var x = 7;
var y = 8;
var z = x + y; 

Kokeile itse

Vähennys

VähennysLaskin (-)Vähennysluku.

var x = 7;
var y = 8;
var z = x - y; 

Kokeile itse

Kertolasku

KertolaskuLaskin (*)Kertoluku.

var x = 7;
var y = 8;
var z = x * y; 

Kokeile itse

Jako

JakoLaskin (/)Jako.

var x = 7;
var y = 2;
var z = x / y; 

Kokeile itse

Kertoaja

KertoajaLaskin (%)Palauttaa jakamisen jäännöksen.

var x = 7;
var y = 2;
var z = x % y; 

Kokeile itse

Huomautus:Matematiikassa kahden kokonaisluvun jakaminen tuottaa kokonaisosan ja jäännöksen.

Huomautus:Matematiikassa modulolaskennan tuloksena on laskennallisen jakamisen jäännös.

Lisääminen

LisääminenLaskin (++)Laskee arvon lisäämisen.

var x = 7;
x++;
var z = x;

Kokeile itse

Vähennys

VähennysLaskin (--)Laskee arvon vähenemisen.

var x = 7;
x--;
var z = x; 

Kokeile itse

Potenssi

Potenssiallisyyslaskin (**) nostaa ensimmäisen luvun toisen luvun potenssiksi.

Esimerkki

var x = 5;
var z = x ** 2;          // Tulostuu 25

Kokeile itse

x ** y tuottama tulos on sama kuin Math.pow(x,y):

Esimerkki

var x = 5;
var z = Math.pow(x,2);   // Tulos on 25

Kokeile itse

Operaattorin prioriteetti

Operaattorin prioriteetti (Operator precedence) kuvaa laskennan järjestystä aritmeettisessa lausekkeessa.

Esimerkki

var x = 200 + 50 * 2;

Kokeile itse

Esimerkin tuloksena onko 250 * 2 vai 200 + 100?

Onko etusija lisäyksellä vai kertomisella?

Perinteisessä koulumatematiikassa kertominen on prioriteettia.

Kertominen (*)Ja jakaminen (%)Ja lisääminen (+)Ja vähennys (-)On korkeampiPrioriteetti.

Samalla, kuten koulun matematiikassa, voidaan muuttaa prioriteettia käyttämällä sulkeita:

Esimerkki

var x = (200 + 50) * 2;

Kokeile itse

Kun käytetään sulkeita, sulkeiden sisällä olevat operaattorit lasketaan ensin.

Kun useilla operaattoreilla on sama prioriteetti (esim. lisääminen ja vähennys), niiden laskeminen tapahtuu vasemmalta oikealle:

Esimerkki

var x = 200 + 50 - 2;

Kokeile itse

JavaScript-laskin operaattorin prioriteettiarvo

Arvo Laskin Kuvaus Esimerkki
20 ( ) Lausekkeen ryhmittely (3 + 4)
       
19 . Jäsen person.name
19 [] Jäsen person["name"]
19 () Funktiokutsu myFunction()
19 new Luo new Date()
       
17 ++ Jälkiliikkeinen lisääntyminen i++
17 -- Jälkiliikkeinen vähennys i--
       
16 ++ Etuliikkeinen lisääntyminen ++i
16 -- Etuliikkeinen vähennys --i
16 ! 逻辑否 !(x==y)
16 typeof Tyyppi typeof x
       
15 ** Nouseva potenssi (ES7) 10 ** 2
       
14 * Kertominen 10 * 5
14 / Jakaminen 10 / 5
14 % Modulo jakaminen 10 % 5
       
13 + Lisää 10 + 5
13 - Vähennys 10 - 5
       
12 << Vasen siirto x << 2
12 >> Oikea siirto x >> 2
12 >>> Oikea siirto (ei merkkivalintoja) x >>> 2
       
11 < Pienempi x < y
11 <= Pienempi tai yhtä pieni x <= y
11 > Suurempi x > y
11 >= Suurempi tai yhtä suuri x >= y
11 in Olen objektin ominaisuus "PI" in Math
11 instanceof Olen objektin esimerkki instanceof Array
       
10 == Yhtäinen x == y
10 === Tarkka yhtäisyys x === y
10 != 不相等 x != y
10 !== 严格不相等 x !== y
       
9 & 按位与 x & y
8 ^ 按位 XOR x ^ y
7 | 按位或 x | y
6 && 逻辑与 x && y
5 || 逻辑否 x || y
4 ? : 条件 ? "Kyllä" : "Ei"
       
3 = 赋值 x = y
3 += 赋值 x += y
3 -= 赋值 x -= y
3 *= 赋值 x *= y
3 %= 赋值 x %= y
3 <<= 赋值 x <<= y
3 >>= 赋值 x >>= y
3 >>>= 赋值 x >>>= y
3 &= 赋值 x &= y
3 ^= 赋值 x ^= y
3 |= 赋值 x |= y
       
2 yield 暂停函数 暂停函数
1 , Piste 7, 8

Huomioitavaa:Himmeäpunainen viittaa kokeellisiin tai suositeltaviin teknologioihin (ECMASScript 2016 tai ES7).

Vinkki:Lähestytty ilmaisu lasketaan täysin ennen kuin arvoa käytetään ilmauksen lopussa.