CoffeeScript - İşleçler ve Takma Adlar

CoffeeScript Operatörleri

Operatör, derleyiciye belirli matematiksel veya mantıksal işlevleri gerçekleştirmesini söyleyen bir semboldür. Basit bir ifade alalım4 + 5 is equal to 9. Burada 4 ve 5 deniroperands ve "+", operator.

CoffeeScript tarafından sağlanan operatörler, birkaç farklılık dışında JavaScript'dekilerle aynıdır. JavaScript'te bazı sorunlu operatörler var. CoffeeScript ya onları kaldırdı ya da işlevlerini değiştirdi ve ayrıca bazı yeni operatörler tanıttı.

CoffeeScript tarafından desteklenen operatörlerin listesi aşağıdadır.

  • Aritmetik operatörler
  • Karşılaştırma Operatörleri
  • Mantıksal (veya İlişkisel) Operatörler
  • Atama Operatörleri

CoffeeScript Takma Adları

CoffeeScript, operatörlere ek olarak takma adlar da sağlar. CoffeeScript, CoffeeScript kodunuzu okunabilir ve daha kullanıcı dostu hale getirmek için çeşitli operatörlere ve sembollere takma adlar sağlar.

CoffeeScript'in tüm işleçlerine ve takma adlarına tek tek göz atalım.

Aritmetik operatörler

CoffeeScript aşağıdaki aritmetik işleçleri destekler. Değişken varsayA tutar 10 ve değişken B tutar 20, sonra -

Örnekleri Göster

S.No Operatör ve Açıklama Misal
1

+ (Addition)

İki işlenen ekler

A + B = 30
2

− (Subtraction)

İlk işlenenden ikinci işleneni çıkarır

A - B = -10
3

* (Multiplication)

Her iki işlenenle çarpın

A * B = 200
4

/ (Division)

Payı paydaya bölün

B / A = 2
5

% (Modulus)

Bir tamsayı bölümünün kalanını verir

B% A = 0
6

++ (Increment)

Bir tamsayı değerini bir artırır

A ++ = 11
7

-- (Decrement)

Bir tamsayı değerini bir azaltır

A-- = 9

Karşılaştırma Operatörleri

JavaScript, aşağıdaki karşılaştırma operatörlerini destekler. Değişken varsayA tutar 10 ve değişken B tutar 20, sonra -

Örnekleri Göster

S.No Operatör ve Açıklama Misal
1

= = (Equal)

İki işlenenin değerinin eşit olup olmadığını kontrol eder, evet ise koşul doğru olur.

(A == B) doğru değil.
2

!= (Not Equal)

İki işlenenin değerinin eşit olup olmadığını kontrol eder, değerler eşit değilse, koşul doğru olur.

(A! = B) doğrudur.
3

> (Greater than)

Sol işlenenin değerinin sağ işlenenin değerinden büyük olup olmadığını kontrol eder, evet ise koşul doğru olur.

(A> B) doğru değil.
4

< (Less than)

Soldaki işlenenin değerinin sağ işlenenin değerinden küçük olup olmadığını kontrol eder, evet ise koşul doğru olur.

(A <B) doğrudur.
5

>= (Greater than or Equal to)

Sol işlenenin değerinin sağ işlenenin değerinden büyük veya ona eşit olup olmadığını kontrol eder, eğer evet ise, o zaman koşul doğru olur.

(A> = B) doğru değil.
6

<= (Less than or Equal to)

Soldaki işlenenin değerinin sağ işlenenin değerinden küçük veya ona eşit olup olmadığını kontrol eder, eğer öyleyse, koşul doğru olur.

(A <= B) doğrudur.

Aşağıdaki tablo, Karşılaştırma operatörlerinden birkaçı için takma adları göstermektedir. VarsayalımA tutar 20 ve değişken B tutar 20.

Örnekleri Göster

Şebeke Alias Misal
= = (Eşit) is A is B sana doğruyu verir.
! = = (Eşit Değil) isnt A isnt B size yanlış verir.

Mantıksal operatörler

CoffeeScript aşağıdaki mantıksal operatörleri destekler. Değişken varsayA tutar 10 ve değişken B tutar 20, sonra -

Örnekleri Göster

S.No Operatör ve Açıklama Misal
1

&& (Logical AND)

Her iki işlenen de sıfır değilse, koşul doğru olur.

(A && B) doğrudur.
2

|| (Logical OR)

İki işlenenden herhangi biri sıfır değilse, koşul doğru olur.

(A || B) doğrudur.
3

! (Logical NOT)

İşleneninin mantıksal durumunu tersine çevirir. Bir koşul doğruysa, Mantıksal NOT operatörü onu yanlış yapar.

! (A && B) yanlıştır.

Aşağıdaki tablo, bazı mantıksal işleçlerin takma adlarını gösterir. VarsayalımX tutar true ve değişken Y tutar false.

Örnekleri Göster

Şebeke Alias Misal
&& (Mantıksal AND) and X and Y sana yanlış verir
|| (Mantıksal VEYA) or X or Y sana doğruyu verir
! (x değil) not not X sana yanlış verir

Bitsel Operatörler

CoffeeScript, aşağıdaki bitsel operatörleri destekler. Değişken varsayA tutar 2 ve değişken B tutar 3, sonra -

Örnekleri Göster

S.No Operatör ve Açıklama Misal
1

& (Bitwise AND)

Tamsayı argümanlarının her bitinde bir Boolean AND işlemi gerçekleştirir.

(A ve B) 2'dir.
2

| (BitWise OR)

Tamsayı bağımsız değişkenlerinin her bitinde bir Boole VEYA işlemi gerçekleştirir.

(A | B) 3'tür.
3

^ (Bitwise XOR)

Tamsayı bağımsız değişkenlerinin her bitinde bir Boole özel OR işlemi gerçekleştirir. Dışlayıcı VEYA, işlenen birin doğru olduğu veya işlenen iki'nin doğru olduğu, ancak her ikisinin birden olmadığı anlamına gelir.

(A ^ B) 1'dir.
4

~ (Bitwise Not)

Tekli bir operatördür ve işlenendeki tüm bitleri ters çevirerek çalışır.

(~ B) -4'tür.
5

<< (Left Shift)

İlk işlenendeki tüm bitleri ikinci işlenende belirtilen basamak sayısı kadar sola taşır. Yeni bitler sıfırlarla doldurulur. Bir değeri sola kaydırmak onu 2 ile çarpmaya eşdeğerdir, iki konumu kaydırmak 4 ile çarpmaya eşdeğerdir, vb.

(A << 1) 4'tür.
6

>> (Right Shift)

İkili Sağ Shift Operatörü. Soldaki işlenenin değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır.

(A >> 1) 1'dir.

Atama Operatörleri

CoffeeScript, aşağıdaki atama operatörlerini destekler -

Örnekleri Göster

S.No Operatör ve Açıklama Misal
1

= (Simple Assignment )

Sağ taraftaki işlenenden sol taraftaki işlenene değer atar

C = A + B, A + B'nin değerini C'ye atar
2

+= (Add and Assignment)

Sağ işleneni sol işlenene ekler ve sonucu sol işlenene atar.

C + = A, C = C + A'ya eşdeğerdir
3

-= (Subtract and Assignment)

Sağ işleneni sol işlenenden çıkarır ve sonucu sol işlenene atar.

C - = A, C = C - A'ya eşdeğerdir
4

*= (Multiply and Assignment)

Sağ işleneni sol işlenenle çarpar ve sonucu sol işlenene atar.

C * = A, C = C * A'ya eşdeğerdir
5

/= (Divide and Assignment)

Soldaki işleneni sağ işlenenle böler ve sonucu sol işlenene atar.

C / = A, C = C / A'ya eşdeğerdir
6

%= (Modules and Assignment)

İki işlenen kullanarak modülü alır ve sonucu soldaki işlenene atar.

C% = A eşdeğerdir C = C% A

Note - Aynı mantık Bitwise operatörleri için de geçerlidir, böylece << =, >> =, >> =, & =, | = ve ^ = gibi olurlar.

CoffeeScript'te Eşitlik Operatörü

JavaScript ile çalışırken iki tür eşitlik operatörü ile karşılaşırsınız == ve ===.

== JavaScript'teki operatör type coerciveyani, bir işlemdeki iki işlenenin türleri farklıysa, operatörlerden birinin veri türü diğerine dönüştürülür ve sonra her ikisi de karşılaştırılır.

CoffeeScript, bu istenmeyen zorlamayı önler, == JavaScript'in katı karşılaştırma operatörüne ===.

İki operandı kullanarak karşılaştırırsak ===sonra geri döner true, yalnızca bunların hem değerleri hem de veri türleri eşitse, aksi takdirde döndürür false.

Misal

Aşağıdaki örneği düşünün. Burada iki değişkenimiz vara ve b. a tamsayı türünün 21 değerini tutar ve b aynı değere sahip, ancak stringyazın. CoffeeScript'te, karşılaştırdığımızdaa ve bsonuç olacak false. (Beri== CoffeeScript operatörü dönüştürülür === JavaScript operatörü)

a=21
b="21"
result = 21=='21'
console.log result

Derleme sırasında, yukarıdaki CoffeeScript aşağıdaki JavaScript'i üretir

// Generated by CoffeeScript 1.10.0
(function() {
  var a, b, result;
  
  a = 21;
  
  b = "21";
  
  result = a === b;
  console.log(result);
}).call(this);

Yürütüldüğünde, aşağıdaki çıktıyı üretir.

false

Varoluşsal Operatör

CoffeeScript, bir değişkenin varlığını doğrulamak için varoluşsal operatör olarak bilinen yeni bir operatör sağlar. İle gösterilir?. Bir değişken boş veya tanımsız olmadığı sürece, varoluşsal operatör true değerini döndürür.

Misal

Aşağıda verilen varoluşsal operatörün bir örneğidir. Burada üç değişkenimiz var, yaniname, age, ve subject ve varoluşsal operatör kullanarak değişken adı ve telefonun varlığını doğruluyoruz.

name="Ramu"
age=24
subject="Engineering"
verify_name = name?
verify_phone = phone?
console.log verify_name
console.log verify_phone

Derleme sırasında bu, aşağıdaki JavaScript kodunu oluşturacaktır.

// Generated by CoffeeScript 1.10.0
(function() {
  var age, name, subject, verify_name, verify_phone;
  name = "Ramu";
  age = 24;

  subject = "Engineering";
  verify_name = name != null;
  verify_phone = typeof phone !== "undefined" && phone !== null;
  console.log(verify_name);
  console.log(verify_phone);

}).call(this);

Yukarıdaki CoffeeScript dosyasını çalıştırırsak, aşağıdaki çıktıyı üretir.

true
false

Note - Varoluşsal operatörün erişimci varyantına sahibiz ?. Yerine kullanabiliriz. boş referansları bulmak için operatör.

Zincirleme Karşılaştırmalar

Python'da olduğu gibi, CoffeeScript'te tek bir ifadede bir karşılaştırma işleçleri zinciri kullanabiliriz.

Misal

Aşağıda, zincirleme karşılaştırmanın kullanımına bir örnek verilmiştir.

score = 70
passed = 100 > score > 40

console.log passed

Derleme sırasında örnek CoffeeScript size aşağıdaki JavaScript kodunu verir.

// Generated by CoffeeScript 1.10.0
(function() {
  var passed, score;

  score = 70;

  passed = (100 > score && score > 40);

  console.log(passed);

}).call(this);

Yukarıdaki CoffeeScript kodunu çalıştırırsanız, aşağıdaki çıktıyı üretir.

true

Note- CoffeeScript, üçlü operatörü kaldırır; onun yerine kullanabilirizinline if Beyan.

CoffeeScript Takma Adları

Genel olarak, CoffeeScript, CoffeeScript kodunuzu okunabilir ve daha kullanıcı dostu hale getirmek için çeşitli operatörlere ve sembollere takma adlar sağlar. Aşağıda CoffeeScript tarafından sağlanan takma adlar verilmiştir.

İsim Operatör / sembol Takma adlar
"şuna eşittir:" operatörü == dır-dir
"şuna eşit değildir" operatörü ! == isnt
"değil" operatörü ! değil
"ve" operatörü && ve
"veya" operatörü || veya
boole değeri true doğru doğru, evet, açık
boole değeri yanlış yanlış kapalı, hayır
mevcut nesne bu @
yeni satır (veya) noktalı virgül \ n veya; sonra
Tersi if ! Eğer sürece
Dizi varlığını test etmek için içinde
Nesne varlığını test etmek için nın-nin
Üs alma a**b
Tamsayı bölümü a//b
temettüye bağlı modül a%%b

Misal

Aşağıdaki örnek, CoffeeScript'te takma adların nasıl kullanılacağını gösterir -

a=21; b=21

x = true; y = false

console.log a is b

console.log a isnt b

console.log x and y

console.log x or y

console.log yes or no

console.log on or off

console.log a**b

console.log a//b

console.log a%%b

Yukarıdaki örneği derlerken size aşağıdaki JavaScript kodunu verir.

// Generated by CoffeeScript 1.10.0
(function() {
  var a, b, x, y,
    modulo = function(a, b) { return (+a % (b = +b) + b) % b; };

  a = 21;

  b = 21;

  x = true;

  y = false;

  console.log(a === b);

  console.log(a !== b);

  console.log(x && y);

  console.log(x || y);

  console.log(true || false);

  console.log(true || false);

  console.log(Math.pow(a, b));

  console.log(Math.floor(a / b));

  console.log(modulo(a, b));

}).call(this);

Yukarıdaki CoffeeScript dosyasını çalıştırırsanız, aşağıdaki çıktıyı üretir -

true
false
false
true
true
true
5.842587018385982e+27
1
0