Sobes.tech
Intern

JavaScript'te hangi operatörler vardır?

sobes.tech yapay zeka

AI'dan gelen yanıt

JavaScript'te çeşitli işlevleri yerine getiren birkaç operatör türü vardır:

  • Atama Operatörleri: Bir değişkene değer atar.

    • = (basit atama)
    • +=, -=, *=, /=, %= (bileşik atamalar)
    • **= (üs alma ile atama)
    • <<=, >>=, >>>= (kaydırma ile atama)
    • &=, |=, ^= (bit seviyesinde işlemlerle atama)
    • &&=, ||=, ??= (mantıksal atama)
  • Karşılaştırma Operatörleri: İki değeri karşılaştırır ve boolean değer döner.

    • == (eşitlik)
    • != (eşitsizlik)
    • === (katıksız eşitlik)
    • !== (katıksız eşitsizlik)
    • > (büyük)
    • < (küçük)
    • >= (büyük veya eşit)
    • <= (küçük veya eşit)
  • Aritmetik Operatörler: Matematiksel işlemler yapar.

    • + (toplama)
    • - (çıkarma)
    • * (çarpma)
    • / (bölme)
    • % (kalan)
    • ** (üs alma)
    • ++ (arttırma)
    • -- (azaltma)
  • Bit Düzeyinde Operatörler: Sayının bit seviyesinde işlemler yapar.

    • & (Bit düzeyinde VE)
    • | (Bit düzeyinde VEYA)
    • ^ (Bit düzeyinde XOR)
    • ~ (Bit düzeyinde DEĞİL)
    • << (Sola kaydırma)
    • >> (Sağa kaydırma, işaretli)
    • >>> (Sağa kaydırma, işaretsiz)
  • Mantıksal Operatörler: Mantıksal değerleri birleştirir veya ters çevirir.

    • && (Mantıksal VE)
    • || (Mantıksal VEYA)
    • ! (Mantıksal DEĞİL)
  • Dize Operatörleri: Stringlerle çalışır.

    • + (birleştirme)
  • Ternary (üçlü) Operatör: if...else ifadesinin kısa biçimi.

    // koşul ? ifade1 : ifade2
    let result = (a > b) ? "a b'den büyük" : "b veya eşit"
    
  • Virgül Operatörü: Birden fazla ifadeyi yürütür ve sonuncunun değerini döner.

    let x = 0;
    let y = (x++, 5); // x 1 olur, y 5 olur
    
  • İlişki Operatörleri: Tür ve özellik varlığını kontrol eder.

    • in (özelliğin nesnede olup olmadığını kontrol eder)
    // 'propertyName' in object
    console.log('length' in [1, 2, 3]); // true
    
    • instanceof (bir nesnenin belirli bir sınıfın örneği olup olmadığını kontrol eder)
    // object instanceof className
    function Car() {}
    let myCar = new Car();
    console.log(myCar instanceof Car); // true
    
  • Birlikte kullanılan operatörler + ve -:

    • + (operandı sayıya dönüştürür)
    console.log(+"5"); // 5 (sayı)
    
    • - (operandı sayıya dönüştürür ve işaretini ters çevirir)
    console.log(-"10"); // -10 (sayı)
    
  • Tür Operatörleri:

    • typeof (operandın türünü belirten bir dize döndürür)
    // typeof operand
    console.log(typeof 42); // "number"
    console.log(typeof "hello"); // "string"
    
    • delete (bir nesnenin özelliğini veya dizinin öğesini siler)
    // delete object.property
    // delete array[index]
    let obj = { a: 1, b: 2 };
    delete obj.a;
    console.log(obj); // { b: 2 }
    
  • Gruplama operatörü ( ): İşlemlerin sırasını belirler.

    let z = (2 + 3) * 4; // Parantez içi işlemler önce yapılır
    
  • new operatörü: Bir nesne örneği oluşturur.

    // new Constructor([arguments])
    let date = new Date();
    
  • super operatörü: Üst sınıfın metodunu çağırır.

    class Parent {
      greet() {
        console.log("Merhaba Parent'tan");
      }
    }
    class Child extends Parent {
      greet() {
        super.greet(); // Üst sınıf metodunu çağırır
        console.log("Merhaba Child'tan");
      }
    }
    
  • this operatörü: Mevcut yürütme bağlamına atıfta bulunur.

  • void operatörü: Bir ifadeyi yürütür ve undefined döner.

    // void expression
    console.log(void 0); // undefined
    
  • Nullish coalescing ve optional chaining operatörleri:

    • ?? (nullish coalescing - sol operand null veya undefined ise sağ operandı döner)
    // left ?? right
    let val = undefined ?? "varsayılan"; // val "varsayılan" olur
    
    • ?. (optional chaining - güvenli erişim, eğer ara değer null veya undefined ise hata vermez)
    // object?.property?.method()
    let user = { address: { city: "NYC" } };
    console.log(user.address?.zipCode); // undefined (hata yok)