CoffeeScript - Operator dan Alias
Operator CoffeeScript
Operator adalah simbol yang memberi tahu kompiler untuk melakukan fungsi matematika atau logika tertentu. Mari kita ambil ungkapan sederhana4 + 5 is equal to 9. Di sini 4 dan 5 dipanggiloperands dan '+' disebut operator.
Operator yang disediakan oleh CoffeeScript sama seperti di JavaScript kecuali beberapa perbedaan. Ada beberapa operator bermasalah di JavaScript. CoffeeScript baik menghapusnya atau memodifikasi fungsinya dan itu juga memperkenalkan beberapa operator baru.
Berikut adalah daftar operator yang didukung oleh CoffeeScript.
- Operator Aritmatika
- Operator Perbandingan
- Operator Logis (atau Relasional)
- Operator Penugasan
Alias CoffeeScript
Selain operator, CoffeeScript juga menyediakan alias. CoffeeScript menyediakan alias ke berbagai operator dan simbol untuk membuat kode CoffeeScript Anda dapat dibaca dan lebih ramah pengguna.
Mari kita lihat semua operator dan alias CoffeeScript satu per satu.
Operator Aritmatika
CoffeeScript mendukung operator aritmatika berikut. Asumsikan variabelA memegang 10 dan variabel B memegang 20, lalu -
Tunjukkan Contoh
S.No | Operator dan Deskripsi | Contoh |
---|---|---|
1 | + (Addition) Menambahkan dua operan |
A + B = 30 |
2 | − (Subtraction) Mengurangi operan kedua dari yang pertama |
A - B = -10 |
3 | * (Multiplication) Kalikan kedua operan |
A * B = 200 |
4 | / (Division) Bagilah pembilangnya dengan penyebutnya |
B / A = 2 |
5 | % (Modulus) Menghasilkan sisa dari pembagian integer |
B% A = 0 |
6 | ++ (Increment) Meningkatkan nilai integer satu |
A ++ = 11 |
7 | -- (Decrement) Mengurangi nilai integer satu |
A-- = 9 |
Operator Perbandingan
JavaScript mendukung operator perbandingan berikut. Asumsikan variabelA memegang 10 dan variabel B memegang 20, lalu -
Tunjukkan Contoh
S.No | Operator dan Deskripsi | Contoh |
---|---|---|
1 | = = (Equal) Memeriksa apakah nilai dua operan sama atau tidak, jika ya, maka kondisinya menjadi benar. |
(A == B) tidak benar. |
2 | != (Not Equal) Memeriksa apakah nilai dua operan sama atau tidak, jika nilainya tidak sama, maka kondisinya menjadi benar. |
(A! = B) benar. |
3 | > (Greater than) Memeriksa apakah nilai operan kiri lebih besar dari nilai operan kanan, jika ya, maka kondisinya menjadi benar. |
(A> B) tidak benar. |
4 | < (Less than) Memeriksa apakah nilai operan kiri kurang dari nilai operan kanan, jika ya, maka kondisinya menjadi benar. |
(A <B) benar. |
5 | >= (Greater than or Equal to) Memeriksa apakah nilai operan kiri lebih besar dari atau sama dengan nilai operan kanan, jika ya, maka kondisinya menjadi benar. |
(A> = B) tidak benar. |
6 | <= (Less than or Equal to) Memeriksa apakah nilai operan kiri kurang dari atau sama dengan nilai operan kanan, jika ya, maka kondisinya menjadi benar. |
(A <= B) benar. |
Tabel berikut menunjukkan alias untuk beberapa operator Perbandingan. SeharusnyaA memegang 20 dan variabel B memegang 20.
Tunjukkan Contoh
Operator | Alias | Contoh |
---|---|---|
= = (Sama) | is | A is B memberi Anda kebenaran. |
! = = (Tidak Sama) | isnt | A isnt B memberimu palsu. |
Operator Logis
CoffeeScript mendukung operator logika berikut. Asumsikan variabelA memegang 10 dan variabel B memegang 20, lalu -
Tunjukkan Contoh
S.No | Operator dan Deskripsi | Contoh |
---|---|---|
1 | && (Logical AND) Jika kedua operan bukan nol, maka kondisinya menjadi benar. |
(A && B) benar. |
2 | || (Logical OR) Jika salah satu dari dua operan bukan nol, maka kondisinya menjadi benar. |
(A || B) itu benar. |
3 | ! (Logical NOT) Membalik keadaan logis dari operannya. Jika kondisinya benar, maka operator NOT Logical akan membuatnya salah. |
! (A && B) salah. |
Tabel berikut menunjukkan alias untuk beberapa operator logika. SeharusnyaX memegang true dan variabel Y memegang false.
Tunjukkan Contoh
Operator | Alias | Contoh |
---|---|---|
&& (Logis DAN) | and | X and Y memberimu palsu |
|| (Logis ATAU) | or | X or Y memberi Anda kebenaran |
! (bukan x) | not | not X memberimu palsu |
Operator Bitwise
CoffeeScript mendukung operator bitwise berikut. Asumsikan variabelA memegang 2 dan variabel B memegang 3, lalu -
Tunjukkan Contoh
S.No | Operator dan Deskripsi | Contoh |
---|---|---|
1 | & (Bitwise AND) Ia melakukan operasi Boolean AND pada setiap bit argumen integernya. |
(A & B) adalah 2. |
2 | | (BitWise OR) Ia melakukan operasi Boolean OR pada setiap bit argumen integernya. |
(A | B) adalah 3. |
3 | ^ (Bitwise XOR) Ia melakukan operasi Boolean eksklusif OR pada setiap bit argumen integernya. Eksklusif OR berarti salah satu operan satu benar atau operan dua benar, tetapi tidak keduanya. |
(A ^ B) adalah 1. |
4 | ~ (Bitwise Not) Ini adalah operator unary dan beroperasi dengan membalik semua bit di operan. |
(~ B) adalah -4. |
5 | << (Left Shift) Ini memindahkan semua bit di operan pertamanya ke kiri dengan jumlah tempat yang ditentukan di operan kedua. Bit baru diisi dengan nol. Menggeser nilai ke kiri dengan satu posisi sama dengan mengalikannya dengan 2, menggeser dua posisi sama dengan mengalikan dengan 4, dan seterusnya. |
(A << 1) adalah 4. |
6 | >> (Right Shift) Operator Pergeseran Kanan Biner. Nilai operan kiri dipindahkan ke kanan dengan jumlah bit yang ditentukan oleh operan kanan. |
(A >> 1) adalah 1. |
Operator Penugasan
CoffeeScript mendukung operator penetapan berikut -
Tunjukkan Contoh
S.No | Operator dan Deskripsi | Contoh |
---|---|---|
1 | = (Simple Assignment ) Menetapkan nilai dari operan sisi kanan ke operan sisi kiri |
C = A + B akan menetapkan nilai A + B ke dalam C |
2 | += (Add and Assignment) Ini menambahkan operan kanan ke operan kiri dan memberikan hasilnya ke operan kiri. |
C + = A ekivalen dengan C = C + A |
3 | -= (Subtract and Assignment) Ini mengurangi operan kanan dari operan kiri dan memberikan hasilnya ke operan kiri. |
C - = A ekivalen dengan C = C - A |
4 | *= (Multiply and Assignment) Ini mengalikan operan kanan dengan operan kiri dan memberikan hasilnya ke operan kiri. |
C * = A setara dengan C = C * A |
5 | /= (Divide and Assignment) Ini membagi operan kiri dengan operan kanan dan memberikan hasilnya ke operan kiri. |
C / = A ekivalen dengan C = C / A |
6 | %= (Modules and Assignment) Dibutuhkan modulus menggunakan dua operan dan memberikan hasilnya ke operan kiri. |
C% = A ekivalen dengan C = C% A |
Note - Logika yang sama berlaku untuk operator Bitwise sehingga akan menjadi seperti << =, >> =, >> =, & =, | = dan ^ =.
Operator Kesetaraan di CoffeeScript
Saat bekerja dengan JavaScript, Anda akan menemukan dua jenis operator kesetaraan == dan ===.
Itu == operator di JavaScript adalah type coercive, yaitu, jika tipe dari dua operand dalam suatu operasi berbeda, maka tipe data salah satu operator diubah menjadi yang lain dan kemudian keduanya dibandingkan.
CoffeeScript menghindari paksaan yang tidak diinginkan ini, ia mengkompilasi file == operator ke operator perbandingan ketat JavaScript ===.
Jika kita membandingkan dua operan menggunakan ===, lalu kembali true, hanya jika nilai dan tipe datanya sama, jika tidak maka akan dikembalikan false.
Contoh
Perhatikan contoh berikut. Di sini kami memiliki dua variabela dan b. a memegang nilai 21 tipe integer dan b memegang nilai yang sama, tetapi dari stringTipe. Di CoffeeScript, saat kami membandingkana dan b, hasilnya akan seperti itu false. (Sejak== operator CoffeeScript diubah menjadi === operator JavaScript)
a=21
b="21"
result = 21=='21'
console.log result
Saat menyusun, CoffeeScript di atas menghasilkan JavaScript berikut
// Generated by CoffeeScript 1.10.0
(function() {
var a, b, result;
a = 21;
b = "21";
result = a === b;
console.log(result);
}).call(this);
Saat menjalankan, ini menghasilkan keluaran berikut.
false
Operator eksistensial
CoffeeScript menyediakan operator baru yang dikenal sebagai operator eksistensial untuk memverifikasi keberadaan variabel. Ini dilambangkan dengan?. Kecuali variabel null atau tidak ditentukan, operator eksistensial mengembalikan nilai true.
Contoh
Diberikan di bawah ini adalah contoh operator eksistensial. Di sini kami memiliki tiga variabel, yaituname, age, dan subject dan kami memverifikasi keberadaan nama variabel dan telepon menggunakan operator eksistensial.
name="Ramu"
age=24
subject="Engineering"
verify_name = name?
verify_phone = phone?
console.log verify_name
console.log verify_phone
Saat kompilasi, ini akan menghasilkan kode JavaScript berikut.
// 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);
Jika kita menjalankan file CoffeeScript di atas, ini menghasilkan keluaran sebagai berikut.
true
false
Note - Kami memiliki varian pengakses dari operator eksistensial ?. Kita bisa menggunakannya sebagai pengganti. operator untuk mengetahui referensi nol.
Perbandingan Berantai
Seperti di Python, kita bisa menggunakan rantai operator perbandingan dalam satu ekspresi di CoffeeScript.
Contoh
Berikut adalah contoh penggunaan perbandingan berantai.
score = 70
passed = 100 > score > 40
console.log passed
Saat mengompilasi, contoh CoffeeScript memberi Anda kode JavaScript berikut.
// Generated by CoffeeScript 1.10.0
(function() {
var passed, score;
score = 70;
passed = (100 > score && score > 40);
console.log(passed);
}).call(this);
Jika Anda menjalankan kode CoffeeScript di atas, ini menghasilkan keluaran sebagai berikut.
true
Note- CoffeeScript menghapus operator terner; alih-alih itu, kita bisa menggunakaninline if pernyataan.
Alias CoffeeScript
Secara umum, CoffeeScript menyediakan alias ke berbagai operator dan simbol agar kode CoffeeScript Anda dapat dibaca dan lebih ramah pengguna. Berikut adalah alias yang disediakan oleh CoffeeScript.
Nama | Operator / simbol | Alias |
---|---|---|
operator "sama dengan" | == | adalah |
Operator "tidak sama dengan" | ! == | isnt |
operator "bukan" | ! | tidak |
operator "dan" | && | dan |
"atau" operator | || | atau |
nilai boolean benar | benar | benar, ya, aktif |
nilai boolean salah | Salah | off, tidak |
objek saat ini | ini | @ |
baris baru (atau) titik koma | \ n atau; | kemudian |
Kebalikan dari jika | ! jika | kecuali kalau |
Untuk menguji keberadaan array | di | |
Untuk menguji keberadaan objek | dari | |
Eksponensial | Sebuah**b | |
Divisi integer | Sebuah//b | |
modulo tergantung dividen | Sebuah%%b |
Contoh
Contoh berikut menunjukkan cara menggunakan alias di CoffeeScript -
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
Saat menyusun contoh di atas, ini memberi Anda kode JavaScript berikut.
// 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);
Jika Anda menjalankan file CoffeeScript di atas, ini menghasilkan output berikut -
true
false
false
true
true
true
5.842587018385982e+27
1
0