Aşağıda, Tablo A.2'de, JavaScript'te mevcut olan aritmetiksel atama operatörlerinin bir listesi ve işlevleri görülmektedir:
Tablo A.2-JavaScript'te Aritmetiksel Atama Operatörleri
Operatör | Sembolü | Kullanılışı | İşlem sonucu |
Atama | = | x = y | y'nin değerini x'e ata |
Topla-ata | + = | x + = y | x + y'nin değerini x'e ata |
Çıkar-ata | - = | x - = y | x - y'nin değerini x'e ata |
Çarp-ata | * = | x * = y | x * y'nin değerini x'e ata |
Böl-ata | / = | x / = y | x / y'nin değerini x'e ata |
Kalanını ata | % = | x % = y | x % y'nin değerini x'e ata |
Tablodan kolayca anlaşılacağı üzere x + = y ifadesi x = x + y ifadesine, x % = y ifadesi de x = x % y ifadesine denktir.
Sol taraftaki operand (değişken, dizi elemanı, yapı elemanı v.b) sağ taraftaki operandın değerini bellekte saklar.
Atama sembolleri peşpeşe kullanılabilir ve bu durumda sağdan sola doğru atama gerçekleştirilecektir. Aşağıdaki örneği inceleyiniz :
<html>
<head>
<TITLE>İÇİNDEKİLER</TITLE>
</head>
<body>
<SCRIPT LANGUAGE="javaSCRIPT">
var l,k;
l = k = 13.72 ;
document.write("<H3>l="+l+"</H3>");
document.write("<H3>k="+k+"</H3>");
</SCRIPT>
</body>
</html>
Yukarıdaki komutlar ile, = sembolünün birleşme özelliği sağdan sola olduğu için,
( l = (k = 13.72)) ;
Sırasıyla atamalar yapılarak k ve l'nin değerleri 13.72 olarak bulunur.
JavaScript programı içinde ;
x = x * 10 ;
şeklindeki bir ifade x * = 10; şeklinde yazılabilir. Kodu bu şekilde yazmak, hata olasılığını azaltır; okunabilirliği artırır ayrıca derleyicinin daha etkin bir şekilde amaç program (object code) üretmesini sağlar.
Bu operatörler kullanılırken önceliklere dikkat edilmelidir. Örneğin;
x = x * 5 – 2;
ifadesi
x * = 5 – 2;
ile aynı değildir.
Çıkarma (-) operatörü, atamalardan daha yüksek öncelikli ve çarpma da çıkarmadan yüksek öncelikli olduğu için ifade aşağıdaki gibi yorumlanır:
1. ifade
x = x * 5 – 2 ;
x = ( (x * 5) – 2) ;
şeklinde yorumlanır.
2. ifade
x = ( (x * 5) – 2) ;
x*=(5-2);
x = x * (5 – 2) ;
Aşağıdaki programda bu tip operatörlerin yer aldığı ifadeler ve sonuçlar görülmektedir:
<html>
<head>
<TITLE>İÇİNDEKİLER</TITLE>
</head>
<body>
<SCRIPT LANGUAGE="javaSCRIPT">
var a, b, c, x ;
var y, z ;
a = 5 ; b = 8 ; c = 7 ;
x = 2 ; y = 7 ; z = 12 ;
a += b + c - z ;
b /= y * z + a * b ;
c %= x + a ;
z -= x * c + a ;
a *= b + (c *= x) ;
document.write("<H3>a="+a+"</H3>");
document.write("<H3>b="+b+"</H3>");
document.write("<H3>c="+c+"</H3>");
document.write("<H3>x="+x+"</H3>");
document.write("<H3>y="+y+"</H3>");
document.write("<H3>z="+z+"</H3>");
</SCRIPT>
</body>
</html>