
İçindekiler
JavaScript öğrenmeye başlayan herkesin mutlaka hakim olması gereken konulardan biri, javascript number (sayı) veri türü ve bu veri türüyle yapılan temel aritmetik işlemlerdir. Bu yazımızda, JavaScript’te sayılarla çalışmanın temel prensiplerini, işlem önceliğini ve arttırma/azaltma operatörlerinin nasıl kullanıldığını örneklerle ve detaylarla birlikte inceleyeceğiz. Hazırsan başlayalım!
Javascript Number Veri Türü Nedir?
JavaScript number veri türü, hem tamsayıları (integers) hem de ondalıklı sayıları (floating-point numbers) kapsar. JavaScript, C veya Java gibi dillerin aksine, tamsayı (“int”) ve ondalıklı sayı (“float”) ayrımı yapmaz. Bu, dilin kullanımını basitleştirir.
let yas = 23;
let pi = 3.14;
let negatifSayi = -15;
let ondalikliNegatif = -7.5;
Yukarıdaki tüm değişkenler “number” veri türündedir. JavaScript number türle birçok matematiksel işlemi kolaylıkla yapabilirsin.
Ayrıca, Number
yapıcı fonksiyonu ile farklı türlerdeki değerleri sayıya çevirmek de mümkündür:
let sayi1 = Number("123"); // 123
let sayi2 = Number(true); // 1
let sayi3 = Number(false); // 0
Temel Aritmetik İşlemler
JavaScript, sayılarla ilgili dört temel aritmetik işlem sunar:
- Toplama (
+
): İki sayıyı toplar. - Çıkarma (
-
): İki sayı arasındaki farkı verir. - Çarpma (
*
): Sayıları çarpar. - Bölme (
/
): Sayıları böler.
let sayi1 = 10;
let sayi2 = 5;
console.log(sayi1 + sayi2); // 15
console.log(sayi1 - sayi2); // 5
console.log(sayi1 * sayi2); // 50
console.log(sayi1 / sayi2); // 2
Mod Alma İşlemi
Mod alma (%
) işlemi, bir sayının başka bir sayıya bölümünden kalanı bulmak için kullanılır. Genellikle tek/çift kontrolü veya belirli aralıklarla işlem yapmak için tercih edilir.
console.log(10 % 3); // 1
console.log(15 % 5); // 0
console.log(17 % 2); // 1 (tek sayı olduğunu gösterir)
Üs Alma İşlemi
JavaScript’te bir sayının üssünü almak için **
operatörü kullanılır:
console.log(2 ** 3); // 8
console.log(5 ** 2); // 25
Bu işlem, matematiksel hesaplamalarda çok faydalı olabilir. Alternatif olarak Math.pow()
fonksiyonu da kullanılabilir:
console.log(Math.pow(2, 3)); // 8
İşlem Önceliği (Operator Precedence)
Birden fazla aritmetik işlemi bir arada kullandığımızda, JavaScript belirli bir işlem önceliği kuralına göre bu işlemleri sıralar. Bu kurallar sayesinde hangi işlemin önce gerçekleşeceği belirlenir.
Genel İşlem Önceliği Sıralaması:
- Parantezler
()
– En yüksek önceliğe sahiptir. - Üs alma
**
- Çarpma
*
, Bölme/
, Mod%
- Toplama
+
, Çıkarma-
Örneklerle pekiştirelim:
let sonuc1 = 10 + 5 * 2;
console.log(sonuc1); // 20 çünkü önce 5*2 = 10, sonra 10+10 = 20
let sonuc2 = (10 + 5) * 2;
console.log(sonuc2); // 30 çünkü önce parantez içi toplanır: 15*2 = 30
let sonuc3 = 100 / 5 * 2;
console.log(sonuc3); // 40 çünkü işlem sırası soldan sağa işler: 100/5=20, 20*2=40
let sonuc4 = 2 ** 3 * 2;
console.log(sonuc4); // 16 çünkü önce üs alınır: 2 ** 3 = 8, sonra 8 * 2 = 16
Arttırma ve Azaltma Operatörleri
JavaScript’te bir değişkenin değerini bir arttırmak veya bir azaltmak için ++
ve --
operatörleri kullanılır. Bu operatörler hem okunabilirliği artırır hem de kısa ve etkili bir yol sunar.
Arttırma (++
)
let sayi = 10;
sayi++;
console.log(sayi); // 11
Azaltma (--
)
let sayi = 10;
sayi--;
console.log(sayi); // 9
Ön Ek ve Son Ek Kullanımı
Bu operatörler ön ek (prefix) ve son ek (postfix) şeklinde iki şekilde kullanılabilir. Aralarındaki fark, işlemin gerçekleştiği zamanla ilgilidir:
let x = 5;
console.log(x++); // 5 (önce değeri yazdırır, sonra arttırır)
console.log(x); // 6
let y = 5;
console.log(++y); // 6 (önce arttırır, sonra yazdırır)
Benzer şekilde azaltma işlemi için de geçerlidir:
let z = 3;
console.log(--z); // 2
console.log(z--); // 2 (ama z artık 1 oldu)
console.log(z); // 1
Bu fark özellikle döngülerde veya koşullu ifadelerde dikkat edilmesi gereken bir durumdur.
Sayılarla Çalışırken Dikkat Edilmesi Gerekenler
String ile Toplama
JavaScript’te +
operatörü hem toplama hem de birleştirme (concatenation) işlemi için kullanıldığından, sayı ve string birlikte kullanıldığında sayı otomatik olarak string’e dönüşür.
let sonuc = 5 + "5";
console.log(sonuc); // "55"
Bu durumdan kaçınmak için tür dönüşümlerini manuel olarak yapmalısın:
let sonuc = 5 + Number("5");
console.log(sonuc); // 10
NaN (Not a Number)
Sayısal işlem yapılmak istenen ama aslında sayı olmayan ifadelerde JavaScript NaN
(Not a Number) sonucunu döndürür.
let x = "abc" / 2;
console.log(x); // NaN
console.log(isNaN(x)); // true
Infinity ve -Infinity
Sıfıra bölme gibi işlemler JavaScript’te hata vermez, ancak Infinity
veya -Infinity
sonucunu döndürür.
console.log(10 / 0); // Infinity
console.log(-10 / 0); // -Infinity
Math Nesnesi ile Sayısal İşlemler
JavaScript, Math
nesnesi sayesinde çok sayıda matematiksel işlevi kullanmamıza olanak tanır:
console.log(Math.round(4.7)); // 5
console.log(Math.floor(4.7)); // 4
console.log(Math.ceil(4.3)); // 5
console.log(Math.random()); // 0 ile 1 arasında rastgele sayı
console.log(Math.max(10, 20)); // 20
console.log(Math.min(10, 20)); // 10
Bu fonksiyonlar, sayısal hesaplamalarda büyük kolaylık sağlar ve daha kontrollü sonuçlar elde etmemize yardımcı olur.
Sonuç
JavaScript number veri türü, aritmetik işlemler, işlem önceliği ve arttırma/azaltma operatörleri yazılım geliştirmenin en temel yapı taşlarındandır. Bu konuları iyi kavramak, daha karmaşık algoritmalara ve projelere geçişte büyük avantaj sağlar. Ayrıca, hatalı sonuçlardan kaçınmak için işlem önceliği ve tür dönüşümleri konularına dikkat edilmelidir.
JavaScript öğrenme sürecindeysen, bu bilgiler senin için sağlam bir temel oluşturacak. Anlamadığın yerlerde örneklerle deneme yaparak pekiştirmen, öğrenmeni hızlandıracaktır. Daha fazla örnek, uygulama ve rehber içerikler için teknokod.net‘i takip etmeye devam et!
-
JavaScript’te Number veri türü nedir?
JavaScript’te
number
veri türü, hem tamsayılar hem de ondalıklı sayılar için kullanılır. Yani 10, -5, 3.14 gibi tüm sayılar aynı türdedir. JavaScript’teint
vefloat
gibi ayrı türler bulunmaz, hepsinumber
veri türüne dahildir. -
JavaScript’te hangi aritmetik operatörler kullanılır?
JavaScript’te yaygın olarak kullanılan temel aritmetik operatörler şunlardır:
+
→ Toplama-
→ Çıkarma*
→ Çarpma/
→ Bölme%
→ Mod (Kalan alma)**
→ Üs alma (ES6 ile geldi) -
Mod alma operatörü (%) ne işe yarar?
Mod alma işlemi, bir sayının başka bir sayıya bölünmesiyle kalanı verir. Bu genellikle sayının tek/çift olduğunu kontrol etmekte ya da döngülerde belirli adımlarda işlem yapmakta kullanılır.
-
İşlem önceliği nedir ve neden önemlidir?
İşlem önceliği, JavaScript’in birden fazla aritmetik operatör içeren ifadeleri hangi sırayla değerlendireceğini belirler. Öncelik sırası şu şekildedir:
Parantez()
Üs alma**
Çarpma*
, Bölme/
, Mod%
Toplama+
, Çıkarma-
-
JavaScript’te arttırma (
++
) ve azaltma (--
) operatörleri nasıl çalışır?Bu operatörler, bir sayıyı hızlıca 1 artırmak veya 1 azaltmak için kullanılır:
let x = 5; x++; // x artık 6 x--; // x tekrar 5 olur
Ayrıca ön ek (++x
) ve son ek (x++
) farkı vardır:let y = 5; console.log(y++); // 5 (önce yazdırır, sonra artırır) console.log(++y); // 7 (önce artırır, sonra yazdırır)
-
String ve number toplandığında ne olur?
+
operatörü hem toplama hem de birleştirme (concatenation) için kullanılır. Bir string ile sayı toplandığında, sayı string’e çevrilerek birleştirilir:console.log(5 + "5"); // "55"
Eğer sayısal toplama isteniyorsa,Number()
ile dönüşüm yapılmalıdır:console.log(5 + Number("5")); // 10
-
JavaScript’te
NaN
nedir?NaN
(Not a Number), matematiksel olarak geçersiz bir işlemin sonucudur. Örneğin:let sonuc = "abc" / 2; console.log(sonuc); // NaN
Bir değerinNaN
olup olmadığını kontrol etmek içinisNaN()
fonksiyonu kullanılır:console.log(isNaN(sonuc)); // true
-
0’a bölme durumunda ne olur?
JavaScript’te 0’a bölme bir hata oluşturmaz ama sonuç
Infinity
veya-Infinity
olur. -
Math nesnesi ne işe yarar?
Math
nesnesi, JavaScript’te sayılarla ilgili gelişmiş işlemler yapmak için kullanılır. Örneğin:Math.round()
→ En yakın tam sayıya yuvarlarMath.floor()
→ Aşağıya yuvarlarMath.ceil()
→ Yukarıya yuvarlarMath.random()
→ 0 ile 1 arasında rastgele sayı üretirMath.max()
/Math.min()
→ En büyük/en küçük sayıyı bulur -
Number veri türü dışında başka hangi sayısal türler var?
JavaScript’te tüm sayılar
number
türünde tanımlanır. Ancak ES2020 ile birlikteBigInt
adlı yeni bir tür gelmiştir. Bu tür çok büyük sayılarla çalışmak için kullanılır:const buyukSayi = 9007199254740991n; console.log(typeof buyukSayi); // bigint
Kaynak: w3schools
Henüz yorum yapılmamış. İlk yorumu siz yapabilirsiniz!