Operator Ternary JavaScript sebagai Pintasan untuk Pernyataan If / Else

click fraud protection

Operator ternary bersyarat di JavaScript memberikan nilai ke variabel berdasarkan kondisi tertentu dan merupakan satu-satunya operator JavaScript yang membutuhkan tiga operan.

Operator ternary adalah pengganti jika pernyataan di mana keduanya jika dan lain klausa menetapkan nilai yang berbeda untuk bidang yang sama, seperti:

jika (kondisi)
hasil = 'sesuatu';
lain
result = 'somethingelse';

Operator ternary mempersingkat pernyataan if / else ini menjadi satu pernyataan:

hasil = (kondisi)? 'sesuatu': 'sesuatu yang lain'; 

Jika kondisi benar, operator ternary mengembalikan nilai ekspresi pertama; jika tidak, ini mengembalikan nilai ekspresi kedua. Mari kita pertimbangkan bagian-bagiannya:

  • Pertama, buat variabel yang ingin Anda beri nilai, dalam hal ini, hasil. Variabel hasil akan memiliki nilai yang berbeda tergantung pada kondisinya.
  • Perhatikan bahwa di sisi kanan (mis. Operator itu sendiri), the kondisi adalah yang pertama.
  • Itu kondisi selalu diikuti oleh tanda tanya (?), yang pada dasarnya dapat dibaca sebagai "apakah itu benar?"
  • instagram viewer
  • Dua hasil yang mungkin datang terakhir, dipisahkan oleh titik dua (:).

Penggunaan ini dari operator ternary hanya tersedia bila aslinya jika Pernyataan mengikuti format yang ditunjukkan di atas - tetapi ini skenario yang cukup umum, dan menggunakan operator ternary bisa jauh lebih efisien.

Contoh Operator Ternary

Mari kita lihat contoh nyata.

Mungkin Anda perlu menentukan anak-anak yang usia yang tepat untuk menghadiri TK. Anda mungkin memiliki pernyataan bersyarat seperti ini:

var age = 7;
var kindergarten_eligible;
if (umur> 5) {
kindergarten_eligible = "Cukup tua";
}
lain {
kindergarten_eligible = "Terlalu muda";
}

Dengan menggunakan operator ternary, Anda dapat mempersingkat ekspresi menjadi:

var kindergarten_eligible = (umur <5)? "Terlalu muda": "Cukup tua";

Contoh ini tentu saja akan mengembalikan "Cukup lama."

Evaluasi Berganda

Anda dapat memasukkan beberapa evaluasi, juga:

var age = 7, var socially_ready = true;
var kindergarten_eligible = (umur <5)? "Terlalu muda": secara sosial_ sudah
"Cukup tua tetapi belum siap" "Tua dan cukup matang secara sosial"
console.log (kindergarten_eligible); // log "Tua dan cukup dewasa secara sosial"

Operasi Berganda

Operator ternary juga memungkinkan dimasukkannya beberapa operasi untuk setiap ekspresi, dipisahkan oleh koma:

var age = 7, socially_ready = true;
umur> 5? (
lansiran ("Anda sudah cukup umur."),
location.assign ("continue.html")
): (
socially_ready = false,
lansiran ("Maaf, tetapi Anda belum siap.")
);

Implikasi Operator Ternary

Operator ternary menghindari sebaliknya kode, jadi di satu sisi, mereka tampak diinginkan. Di sisi lain, mereka dapat mengganggu keterbacaan - jelas, "JIKA LAIN" lebih mudah dipahami daripada samar "?".

Saat menggunakan operator ternary - atau singkatan apa pun - pertimbangkan siapa yang akan membaca kode Anda. Jika pengembang yang kurang berpengalaman mungkin perlu memahami logika program Anda, mungkin penggunaan operator ternary harus dihindari. Ini terutama benar jika kondisi dan evaluasi Anda cukup kompleks sehingga Anda perlu membuat sarang atau rantai operator ternary Anda. Faktanya, operator bersarang semacam ini tidak hanya berdampak pada keterbacaan tetapi juga debugging.

Seperti halnya keputusan pemrograman, pastikan untuk mempertimbangkan konteks dan kegunaan sebelum menggunakan operator ternary.

instagram story viewer