CONTROL FLOW
Ternary Operator
Dalam latihan sebelumnya, kami belajar menulis singkat jika ada pernyataanif
/else
if
/else
untuk membuatnya lebih mudah dibaca. JavaScript juga menyediakan cara untuk mempersingkat pernyataan if
/else
sederhana yang disebut operator ternary.
let isNightTime = true;
if (isNightTime) {
console.log('Turn on the lights!');
} else {
console.log('Turn off the lights!');
}
Dalam contoh di atas, kami melihat pola yang sangat familier. Lihat contoh di bawah ini untuk cara yang setara untuk mengungkapkan ini.
isNightTime ? console.log('Turn on the lights!') : console.log('Turn off the lights!');
Kode pada contoh di atas akan beroperasi persis seperti kode dari contoh sebelumnya. Mari kita pecahkan contoh ini menjadi bagian-bagiannya:
- isNightTime ? - pernyataan kondisional diikuti dengan tanda tanya. Ini memeriksa apakah isNightTime ? benar.
console.log ('Turn on the lights!')
- kode ini akan dijalankan jika kondisinya benar.- : - titik dua memisahkan dua blok kode yang berbeda yang dapat dieksekusi.
- console.log('Turn off the lights!'); - kode ini akan dijalankan jika kondisinya salah
Dalam contoh ini, kami memeriksa apakah nilai suatu variabel benar atau salah. Operator terne\r dapat digunakan untuk kondisi apa pun yang dapat dievaluasi ke true atau false, seperti yang dilakukan operator perbandingan
age >= 16 ? console.log('You are old enough to drive in the United States!') : console.log('You are not old enough to drive in the United States!');
Dalam contoh di atas, pernyataan kondisional sedang memeriksa apakah nilai variabel
age
lebih besar dari atau sama dengan 16. Jika demikian, pesan yang menyatakan pengguna sudah cukup lama untuk dikendarai akan dicatat ke konsol. Jika tidak, pesan yang menyatakan pengguna tidak cukup lama untuk dikendarai akan dicatat.1
Di main.js, refactor blok if / else pertama untuk menggunakan operator terner.
2
Di main.js, refactor yang kedua jika / blok lain untuk menggunakan operator terner.
3
Di main.js, refactor ketiga jika / blok lain untuk menggunakan operator terner.
let isLocked = false;
isLocked ? console.log('You will need a key to open the door.') : console.log('You will not need a key to open the door.');
let isCorrect = true;
isCorrect ? console.log('Correct!'):
console.log('Incorrect!');
let favoritePhrase = 'Love That!';
favoritePhrase === 'Love That!' ?
console.log('I love that!'):
console.log("I don't love that!");
Tidak ada komentar:
Posting Komentar