En çok bilinen işlemler matematik işlemlerdir: +, -, /, * (toplama, çıkartma, bölme, çarpma). İşlemler iki gruba ayrılır: Karşılaştırma işlemleri ve atama ya da 'aksiyon' işlemleri. Karşılaştırma işlemleri iki değişkenin aralarındaki ilişkiyi belirtir. Diğerleri bir değişken üzerinde yapılan işlemi tanımlar. Örneğin değerini bir arttırmak gibi.
Aşağıdaki tablo en çok kullanılanları verir. Javascript 1.3 işlemlerinden özdeşlik işlemi (=== işareti) ve benzerleri de vardır. Buradakiler tüm var olan tarayıcılar tarafından desteklenmektedir. Bu tür işlemleri desteklemeyen tarayıcılar zaten hata mesajı vererek duracaklardır.
|
JavaScript İşlemleri
|
| İşlem | Kullanımı |
| + | iki sayıyı toplar ya da iki yazı dizisini birbirine ekler, bir sayıya yazı, bir yazının sonuna sayı eklenebilir ve sonuç her zaman yazıdır |
| - | ikinci sayıyı birinciden çıkartma |
| / | ilk sayıyı ikincisine böler |
| * | iki sayıyı çarpar |
| % | birinci sayıyı ikinciye böler ve kalanı döndürür |
| = | sağdaki değeri soldaki nesneye atar |
| += | soldaki nesne = soldaki nesne + sağdaki değer (bu yazıların sonuna yeni yazı eklerken de geçerlidir) |
| -= | soldaki nesne = soldaki nesne - sağdaki değer |
| > | sağdaki sayı soldakinden büyük olmalıdır (bu hem yazılarda hem de sayısal değerlerde geçerlidir) |
| < | sağdaki sayı soldakinden daha küçük olmalıdır (bu hem yazılarda hem de sayısal değerlerde geçerlidir) |
| >= | sağdaki büyük ya da eşittir soldaki (bu hem yazı hem de sayısal değerlerde geçerlidir) |
| <= | sağdaki sayı soldakinden küçük ya da eşit olmalıdır (bu hem yazı hem de sayısal değerlerde geçerlidir) |
| ++ | sayıyı arttır |
| -- | sayıyı eksilt |
| == | sayılar ya da nesneler ya da değerler eşit olmalıdır |
| != | sayılar ya da nesneler ya da değerler eşit olmamalıdır |
| << | bit türü sola kaydırma |
| >> | bit türü sağa kaydırma |
| & | bit türü AND |
| | | bit türü OR |
| ^ | bit türü XOR |
| ~ | bit türü NOT |
| ! | mantıksal NOT (deyim doğru olmamalı) |
| && | mantıksal AND (her iki deyim de doğru olmalı) |
| || | mantıksal OR (her iki deyim de doğru olmalı) |
| in | sağdaki nesne ya da dizi soldaki hücre ya da özellikte olmalıdır |
Not, Eğer language="javascript1.2" niteliği <script> biçiminde
atanmazsa
0 == false == '' ve undefined == null
olur. Eğer "language" niteliğinde 'javascript1.2' yoksa Mozilla/Firefox ve diğer Gecko tarayıcılar (ama diğer çok kullanılanlardan hiçbiri) bunu değiştirmiştir ve hiçbiri birbirine eşit değildir. Zaten dil niteliği kullanılmadığı (artık kullanılmasının bir anlamı kalmadığı) için ve Javascript sürümlerinde hiçbir zaman bir standart olmadığı için, bu özelliğe pek de güvenmemek gerekir.
Benzer işlevlerde kullanılan birkaç işlem daha vardır:
- void
- void deyimi ya da void(statement)
- typof
- typeof değişken ya da typeof(variable) bir değişkenin tipini ya da sınıfını döndürür.
- eval
- eval(string) bir yazı dizisini javascript gibi yorumlar.
Daha "var", "new" ve "delete" işlemleri vardır. Değişkenlerin kullanımında bu konuya ilişkin bir çok bilgi bulunabilir. Aynı zamanda aşağıdaki matematik işlemlerine de bakılmalıdır.
Javascript içinde mantıksal XOR işlemi yoktur. Eğer bu işlevselliğe gerek olursa konuya ilişkin birçok belge ve sayfalar vardır (google'lamak yeterlidir).
İşlem öncelikleri
Birden çok işlemden oluşan bir deyimin işlenmesi istendiğinde Javascript, işlemleri belli bir sırada çözer. Örneğin 3 + 6 * 7 hesaplanırken (6 * 7) + 3 biçimde olacak önce çarpma ve sonra toplama yapılacaktır. Bunların işlenmesinde kullanılan yöntem sıralaması söyledir:
* / % + - + (burada ikinci + yazı dizilerini eklemekte kullanılır). Sıralama önceliklerini değiştirmek için parantezler kullanılır. Örneğin 3 + 6 * 7 = 45 ama (3 + 6) *7 = 63 olur.
Math nesne yöntemi
Aslında, Math nesnesindeki bu yöntemler işlemlerin yerine kullanılır.
| Math object methods |
| İşlem | Açıklaması |
| Math.abs(n) | n sayısının mutlak değerini döndürür |
| Math.acos(n) | n değerinin radyan olarak cos-1 değerini döndürür |
| Math.asin(n) | n değerinin radyan olarak sin-1 değerini döndürür |
| Math.atan(n) | n değerinin radyan olarak tan-1 değerini döndürür |
| Math.atan2(n,k) | Kartezyan koordinatlarından 0,0 dan n,k ya kadar açı (rads) değerini döndürür |
| Math.ceil(n) | n değerinin en yakın yukarı tam sayıya yuvarlanmasını döndürür |
| Math.cos(n) | cos n değerini döndürür (n radian türündendir) |
| Math.exp(n) | e üzeri n değerini döndürür |
| Math.floor(n) | n değerinin en yakın aşağı tam sayıya yuvarlanmasını döndürür |
| Math.log(n) | ln(n) değerini döndürür
Not, log10(n) değeri için, Math.log(n) / Math.log(10) kullanır |
| Math.max(a,b,c,...) | En büyük sayıyı döndürür |
| Math.min(a,b,c,...) | En küçük sayıyı kullanır |
| Math.pow(n,k) | n üzeri k değerini döndürür |
| Math.random() | 0 ile 1 arasında rastgele sayı üretir |
| Math.round(n) | Yukarı ya da aşağıya en yakın tam sayıya yuvarlanmış değeri döndürür |
| Math.sin(n) | sin n değerini döndürür (n radiandır) |
| Math.sqrt(n) | Kare kök n döndürür |
| Math.tan(n) | tan n değerini döndürür(n değeri radiandır) |