Cara menggunakan operator and di javascript

Meskipun disebut "logika", mereka dapat diterapkan pada semua jenis nilai, bukan hanya boolean. Hasilnya bisa tipe apa saja

Mari kita lihat detailnya

Operator "ATAU" diwakili oleh dua simbol garis vertikal

result = a || b;

Dalam pemrograman klasik, logika OR hanya digunakan untuk memanipulasi nilai boolean. Jika argumen memiliki

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
6, ia mengembalikan
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
6, tetapi jika tidak, maka ia mengembalikan
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
8

Dalam JavaScript, operator ini sedikit lebih rumit dan lebih bertenaga. Tapi pertama-tama, mari kita lihat apa yang terjadi pada nilai boolean

Ada empat kemungkinan kombinasi logis

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_

Seperti yang bisa kita lihat, hasilnya selalu

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_6 kecuali kedua operan sama dengan
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
8

Jika operan bukan boolean, maka akan diubah menjadi boolean untuk evaluasi

Misalnya, nomor

let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
1 diperlakukan sebagai
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
6, nomor
let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
3 sebagai
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
8

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_

Seringkali, ATAU

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_3 digunakan dalam pernyataan
let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
6 untuk menguji apakah ada kondisi yang
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
6

Sebagai contoh

let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}

Kami dapat memberikan lebih banyak kondisi

let hour = 12;
let isWeekend = true;

if (hour < 10 || hour > 18 || isWeekend) {
  alert( 'The office is closed.' ); // akhir minggu
}

Logika di atas klasik. Sekarang, mari hadirkan fitur "ekstra" dari JavaScript

Algoritma luas bekerja sebagai berikut

Untuk nilai ORed

result = value1 || value2 || value3;

Operator ATAU

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_3 melakukan hal berikut

  • Mengevaluasi operan dari kiri ke kanan
  • Untuk setiap operan, ubah menjadi boolean. Jika hasilnya adalah
    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    6, hentikan dan kembalikan nilai asli operan
  • Jika semua operan telah dievaluasi (misalnya semua
    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    8), kembalikan operan terakhir

Nilai dikembalikan dalam bentuk aslinya, tanpa konversi

Dengan kata lain, rantai ATAU

let hour = 12;
let isWeekend = true;

if (hour < 10 || hour > 18 || isWeekend) {
  alert( 'The office is closed.' ); // akhir minggu
}
_1 mengembalikan nilai kebenaran pertama atau yang terakhir jika tidak ada nilai sebenarnya

Sebagai contoh

alert( 1 || 0 ); // 1 (1 truthy)
alert( true || 'no matter what' ); // (true ialah truthy)

alert( null || 1 ); // 1 (1 ialah nilai truthy pertama)
alert( null || 0 || 1 ); // 1 (nilai truthy pertama)
alert( undefined || null || 0 ); // 0 (semua falsy, mengembalikan nilai terakhir)

Ini menjadikannya penggunaan yang menarik dibandingkan dengan "OR booleanpure, klasik, boolean-only OR"

  1. Dapatkan nilai kebenaran dari daftar variabel atau ekspresi

    Misalnya, kita memiliki variabel

    let hour = 12;
    let isWeekend = true;
    
    if (hour < 10 || hour > 18 || isWeekend) {
      alert( 'The office is closed.' ); // akhir minggu
    }
    _2,
    let hour = 12;
    let isWeekend = true;
    
    if (hour < 10 || hour > 18 || isWeekend) {
      alert( 'The office is closed.' ); // akhir minggu
    }
    3 dan
    let hour = 12;
    let isWeekend = true;
    
    if (hour < 10 || hour > 18 || isWeekend) {
      alert( 'The office is closed.' ); // akhir minggu
    }
    4, yang semuanya opsional

    Kami menggunakan ATAU

    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    _3 untuk memilih satu-satunya yang memiliki data dan menampilkannya (atau
    let hour = 12;
    let isWeekend = true;
    
    if (hour < 10 || hour > 18 || isWeekend) {
      alert( 'The office is closed.' ); // akhir minggu
    }
    6 jika tidak ada yang ditentukan atau ditetapkan)

    let firstName = "";
    let lastName = "";
    let nickName = "SuperCoder";
    
    alert( firstName || lastName || nickName || "Anonymous"); // SuperCoder

    Jika semua variabel salah,

    let hour = 12;
    let isWeekend = true;
    
    if (hour < 10 || hour > 18 || isWeekend) {
      alert( 'The office is closed.' ); // akhir minggu
    }
    7 akan muncul

  2. Evaluasi hubung singkat

    Fitur lain dari operator OR

    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    _3 adalah evaluasi "hubung singkat".

    Itu berarti bahwa

    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    _3 memproses argumennya hingga nilai kebenaran pertama tercapai, kemudian nilai tersebut dikembalikan secara langsung, bahkan tanpa menyentuh argumen lainnya

    Pentingnya fitur ini menjadi jelas jika operan bukan hanya nilai, tetapi ekspresi yang melakukan tindakan, seperti penugasan variabel atau pemanggilan fungsi.

    Pada contoh di bawah ini, hanya pesan kedua yang dieksekusi

    true || alert("not printed");
    false || alert("printed");

    Di baris pertama, operator ATAU

    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    _3 segera berhenti mengevaluasi karena nilai pertama adalah
    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    6, jadi
    result = value1 || value2 || value3;
    2 tidak berfungsi

    Kadang-kadang, orang menggunakan fitur ini untuk menjalankan perintah hanya jika kondisi paling kiri salah

Operator AND diwakili oleh dua ampersand

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
4

result = a && b;

Dalam pemrograman klasik, AND mengembalikan

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_6 jika kedua operan sama-sama benar dan
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
8 sebaliknya

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_0

Contoh dengan

let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
_6

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_1

Sama seperti OR, nilai apa pun dapat menjadi operan dari AND

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_2

Misalnya, ada beberapa nilai yang di-AND

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_3

Apa yang dilakukan operator AND

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_4 adalah sebagai berikut

  • Mengevaluasi operan dari kiri ke kanan
  • Untuk setiap operan, ubah menjadi boolean. Jika hasilnya adalah
    if (1 || 0) { // bekerja seperti if( true || false )
      alert( 'truthy!' );
    }
    8, hentikan dan kembalikan nilai asli operan
  • Jika semua operan dievaluasi (mis. e. semua kebenaran), mengembalikan operan terakhir

Dengan kata lain, AND mengembalikan nilai false pertama atau nilai terakhir jika tidak ada nilai false yang ditemukan

Aturan di atas mirip dengan OR. Perbedaannya adalah AND mengembalikan nilai falsy pertama sementara OR mengembalikan nilai kebenaran pertama

Sebagai contoh

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_4

Kami juga dapat melewati beberapa nilai dalam satu baris. Lihat bagaimana nilai palsu pertama dikembalikan

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_5

Ketika semua nilai benar, nilai terakhir dikembalikan

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_6

Diutamakan DAN

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_4 lebih tinggi dari ATAU
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
3

Prioritas operator DAN

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_4 lebih tinggi dari ATAU
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
3

Jadi kode

alert( 1 || 0 ); // 1 (1 truthy)
alert( true || 'no matter what' ); // (true ialah truthy)

alert( null || 1 ); // 1 (1 ialah nilai truthy pertama)
alert( null || 0 || 1 ); // 1 (nilai truthy pertama)
alert( undefined || null || 0 ); // 0 (semua falsy, mengembalikan nilai terakhir)
_3 pada dasarnya sama seperti jika ekspresi
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
4 dibungkus dengan tanda kurung.
alert( 1 || 0 ); // 1 (1 truthy)
alert( true || 'no matter what' ); // (true ialah truthy)

alert( null || 1 ); // 1 (1 ialah nilai truthy pertama)
alert( null || 0 || 1 ); // 1 (nilai truthy pertama)
alert( undefined || null || 0 ); // 0 (semua falsy, mengembalikan nilai terakhir)
_5

Jangan ganti

let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
_6 dengan. atau &&

Terkadang, orang menggunakan operator AND

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_4 untuk "mempersingkat instruksi
let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
6"

Sebagai contoh

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_7

Tindakan di sisi kanan

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_4 akan dieksekusi hanya jika evaluasi mencapai itu. Artinya, hanya jika
let firstName = "";
let lastName = "";
let nickName = "SuperCoder";

alert( firstName || lastName || nickName || "Anonymous"); // SuperCoder
_0 benar

Jadi pada dasarnya kita memiliki analogi untuk

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_8

Meskipun, versi dengan

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_4 tampak lebih pendek,
let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
6 menjadi jelas dan sedikit lebih mudah dibaca. Jadi kami sarankan menggunakannya untuk setiap kebutuhan. gunakan
let hour = 9;

if (hour < 10 || hour > 18) {
  alert( 'The office is closed.' );
}
6 jika kita mau jika dan gunakan
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
4 jika kita ingin DAN

Operator boolean NOT diwakili oleh tanda seru

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
5

Sintaksnya cukup sederhana

alert( true || true );   // true
alert( false || true );  // true
alert( true || false );  // true
alert( false || false ); // false
_9

Operator ini menerima satu argumen dan melakukan hal berikut

  1. Mengonversi operan menjadi tipe boolean.
    let firstName = "";
    let lastName = "";
    let nickName = "SuperCoder";
    
    alert( firstName || lastName || nickName || "Anonymous"); // SuperCoder
    6
  2. Mengembalikan nilai yang berlawanan

Sebagai contoh

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_0

Double NOT

let firstName = "";
let lastName = "";
let nickName = "SuperCoder";

alert( firstName || lastName || nickName || "Anonymous"); // SuperCoder
7 terkadang digunakan untuk mengubah nilai menjadi tipe boolean

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_1

Artinya, NOT pertama mengubah nilai menjadi boolean dan mengembalikan inversnya, dan NOT kedua membalikkannya lagi. Akhirnya, kami memiliki konversi nilai-ke-boolean sederhana

Ada sedikit cara rewel untuk melakukan hal serupa – fungsi

let firstName = "";
let lastName = "";
let nickName = "SuperCoder";

alert( firstName || lastName || nickName || "Anonymous"); // SuperCoder
8 bawaan

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_2

NOT

if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
_5 memiliki preseden tertinggi dari semua operator logika, sehingga selalu merupakan jalur pertama, sebelum
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
4 atau
if (1 || 0) { // bekerja seperti if( true || false )
  alert( 'truthy!' );
}
3

Apa yang dimaksud dengan operator AND?

Kesimpulannya, operator AND adalah operator yang membandingkan dua operand yang jika keduanya bernilai True, maka hasilnya True .

Apa itu operator dalam JavaScript?

Operator adalah simbol yang dapat digunakan untuk memberi tahu mesin JavaScript untuk melakukan tindakan, operasi, atau melakukan perhitungan, baik itu perhitungan matematis atau logis . Nilai atau variabel yang diperlukan untuk melakukan operasi disebut operan.

Apa Perbedaan antara == dan ===?

Nilai dan jenis sama, === . Operator == akan mengembalikan true sedangkan operator === akan mengembalikan false . Dapat dilihat bahwa hasil dari kedua operator tersebut berbeda. Operator ==, atau biasa disebut operator persamaan longgar, hanya memeriksa nilai kedua operan.

Bagaimana cara membuat fungsi dalam JavaScript?

untuk membuat fungsi , penulisan harus didahului dengan sintaks " fungsi " lalu lanjutkan dengan nama fungsi yang ingin Anda buat . dan isi fungsi ditulis dalam kurung kurawal buka “{” dan kurung kurawal tutup “}”.