Mehmet

WFN Üye
Konular
1,851
Mesajlar
1,852
Çözüm
0
Ticaret Puanı
0
Üyelik
1 Ay 6 Gün
Konum
YurtDışı
Web Sitesi
Var
Alanı
Google Adsense
1/1
Konu sahibi

JavaScript operator nedir?​


JavaScript operator, değerler veya değişkenler üzerinde işlem yapan sembol ya da anahtar kelimedir. Örneğin + toplama, === karşılaştırma, && koşullu mantık ve = atama yapar. Operatörün ürettiği sonuç; sayısal bir değer, true/false, yeni bir metin veya başka bir değerin kendisi olabilir.

En sık kullanılan operatör grupları​


  • Aritmetik: +, -, *, /, % ve üs alma için **.
  • Atama: =, +=, -= gibi operatörler bir değişkene değer yazar veya mevcut değeri günceller.
  • Karşılaştırma: ===, !==, >, <, >= ve <=. Sonuçları booleandır.
  • Mantıksal: &&, || ve !. Koşulları birleştirir veya tersine çevirir.
  • Koşullu: koşul ? doğruDeğer : yanlışDeğer biçimindeki üçlü operatör, kısa bir if...else seçimi yapar.
  • Diğerleri: typeof bir değerin türünü, in bir özelliğin veya anahtarın varlığını, instanceof ise nesnenin belirli bir kurucuyla ilişkisini sınar.

Somut kullanım örneği​


Aşağıdaki kod, operatörlerin birlikte nasıl çalıştığını gösterir:

Kod:
const adet = 3;
const birimFiyat = 20;
const toplam = adet * birimFiyat;
const indirimliMi = toplam >= 50;
const sonuc = indirimliMi ? toplam * 0.9 : toplam;

console.log(toplam);     // 60
console.log(indirimliMi); // true
console.log(sonuc);      // 54

Burada * çarpma, >= karşılaştırma ve ? : koşullu seçim yapar. Çalıştırıldığında sırasıyla 60, true ve 54 görülmelidir. Farklı bir sonuç alırsanız önce değişken türlerini ve parantezleri kontrol edin; özellikle metin ile sayının birlikte kullanıldığı aritmetik ifadeler beklenmedik sonuç verebilir.

Doğru operatörü seçme​


Aynı görünen operatörlerin davranışı farklı olabilir. Pratik karar vermek için şu ayrımı kullanın:

İhtiyaçTercihÖrnek
Değerleri hem tür hem içerik olarak karşılaştırmak=== veya !==5 === "5" sonucu false
Yalnız null veya undefined için varsayılan kullanmak??isim ?? "Bilinmiyor"
Her falsy değerde varsayılan kullanmak||etiket || "Yok"
Bir nesne özelliğine güvenli erişmek?.kullanici?.adres?.sehir

== tür dönüşümü yapabildiği için başlangıç kodunda genellikle === daha öngörülebilirdir. || ise 0, boş metin ve false değerlerini de eksik kabul eder. Bu değerler geçerliyse ?? kullanmak daha doğru olur.

İşlem sırası ve yaygın hatalar​


JavaScript ifadeleri belirli bir öncelik sırasına göre değerlendirir. Çarpma, bölme ve kalan operatörleri aynı öncelik düzeyindedir; bu grupta soldan sağa ilişkilendirme uygulanır. Bunlar toplama ve çıkarmadan önce gelir. Karışık ifadelerde niyeti açıkça göstermek için parantez kullanın:

Kod:
const hataliGibi = 2 + 3 * 4;  // 14
const acik = (2 + 3) * 4;      // 20

Sık hatalar şunlardır:

  • Atama için =, karşılaştırma için === gerektiğini karıştırmak.
  • Metinleri + ile birleştirirken sayısal toplama beklemek. Örneğin "2" + 3 ifadesi metin birleştirir.
  • Ondalık hesaplarda kayan nokta davranışını yok saymak. Para gibi hassas değerlerde hesaplama yaklaşımını ayrıca tasarlayın.
  • Kısa devre davranışını anlamadan && veya || kullanmak. Bu operatörler yalnızca true veya false döndürmek zorunda değildir; ifadelerden birinin değerini döndürebilir.

Örneğin 12 / 3 * 2 sonucu 8’dir; çarpmanın her zaman bölmeden önce yapılacağını varsayarsanız yanlış sonuca ulaşırsınız. ?? boş metni veya sıfırı değiştirmez, yalnız null/undefined değerinde sağ tarafı seçer. ?. ise tanımlanmış bir bağın null/undefined olması durumunda zinciri durdurur; hiç bildirilmemiş değişkeni güvenli hâle getirmez.

Bir ifade beklenmedik sonuç veriyorsa alt işlemleri ayrı değişkenlere ayırın, typeof ile türleri kontrol edin ve belirsiz önceliklerde parantez ekleyin.

Sık sorulan sorular​


JavaScript’te operatör ile ifade arasındaki fark nedir?​


Operatör işlemi belirleyen sembol veya anahtar kelimedir; ifade ise operatörler, değerler ve değişkenlerden oluşan ve sonuç üreten bütündür. a + b bir ifadedir, + ise bu ifadedeki operatördür.

Operatör önceliğini öğrenmeden kod yazabilir miyim?​


Basit ifadelerde evet; ancak birden fazla işlem türü birleştiğinde parantez kullanmak daha güvenlidir. Parantez hem değerlendirme sırasını belirler hem de kodun niyetini okuyana açıklar.

Bir operatörün sonucunu nasıl kontrol ederim?​


İfadeyi geçici bir değişkene atayıp console.log() ile yazdırın. Sonucun türünü anlamak için ayrıca typeof sonuc ifadesini kontrol edebilirsiniz.
 

Sende şimdi bize katılmak ister misin?

Kayıt ol

Bize katılım kolay ve ücretsizdir!

Konuyu görüntüleyenler

Bu konuyu şu anda görüntüleyen üye bulunmuyor.
Robotlar:
  • Anthropic