Rumah  >  Soal Jawab  >  teks badan

Dalam JavaScript, kecuali untuk NaN, adakah semua pembolehubah lain sama dengan dirinya sendiri?

Bagaimanakah JavaScript dengan cepat menentukan sama ada nilai val pembolehubah ialah NaN? Jika kecuali untuk nilai NaN, adakah semua pembolehubah lain sama dengan dirinya sendiri, maka sudah cukup untuk menilai secara langsung sama ada val===val?

学习ing学习ing2633 hari yang lalu1379

membalas semua(4)saya akan balas

  • 怪我咯

    怪我咯2017-07-05 10:52:13

    NaN ialah satu-satunya nilai bukan refleksif dalam JavaScript, iaitu

    NaN === NaN // false
    

    Buku ini menyebut:

    NaN ialah nilai yang sangat istimewa kerana ia tidak pernah sama dengan nilai NaN yang lain (iaitu, ia tidak pernah sama dengan dirinya sendiri, sebenarnya, yang tidak refleksif (tanpa ciri Identiti x === x) . Jadi, NaN !== NaN.

    JavaScript yang anda tidak tahu

    balas
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-07-05 10:52:13

    Ya, NaN boleh dinilai menggunakan isNaN atau sama ada ia sama dengan diri sendiri

    Pada masa yang sama, sebaliknya, jika dua pembolehubah adalah sama untuk menentukan sama ada kedua-dua pembolehubah adalah sama, terdapat kes khas +0 dan -0, dan gunakan timbal balik untuk menentukan sama ada ia sama.

    balas
    0
  • 阿神

    阿神2017-07-05 10:52:13

    let a = []
    let b = []
    
    console.log(a===b)

    Adakah anda akan mencubanya?

    balas
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-07-05 10:52:13

    ES6 dalam Number对象上,新提供了Number.isNaN()方法,建议直接使用Number.isNaN()来检查一个值是否为NaN
    另外除开 +0-0 的情况,===是满足需求的,更好一点的方式使用Object.is()

    balas
    0
  • Batalbalas