Rumah  >  Soal Jawab  >  teks badan

javascript - js menentukan sama ada terdapat nilai pendua dalam nilai dalam objek JSON?

Bagaimana untuk menentukan sama ada nilai specDesc dalam objek JSON tidak boleh sama

给我你的怀抱给我你的怀抱2687 hari yang lalu1132

membalas semua(4)saya akan balas

  • 大家讲道理

    大家讲道理2017-06-12 09:34:44

    if([...new Set(specList.map(item=>item.specDesc))].length < specList.length){
        console.log('有重复')
    }

    balas
    0
  • 阿神

    阿神2017-06-12 09:34:44

    Anda boleh mula-mula merentasi dan menolak nilai obj.specDesc ke dalam tatasusunan, kemudian tulis fungsi untuk menentukan sama ada terdapat pendua dalam tatasusunan

    balas
    0
  • PHP中文网

    PHP中文网2017-06-12 09:34:44

    var obj={};
    for(var i=0,l=specList.length;i<l;i++){
     if(obj[specDesc[i].specDesc]){
       console.log('已存在');
     }else{
       obj[specDesc[i].specDesc]=specDesc[i].specDesc;
       console.log('不存在');
     }
    }

    balas
    0
  • 仅有的幸福

    仅有的幸福2017-06-12 09:34:44

    Tidak bolehkah kita menilai secara langsung? a['spec'] == b['spec'], Jika anda ingin membandingkan nilai yang sepadan dengan semua kunci, anda perlu melintasi semua kunci salah satu daripadanya dan membandingkannya untuk mengetahui sama ada nilai yang sepadan dengan kunci lain adalah sama.

    Memandangkan penyoal hanya menghantar tangkapan skrin, sukar untuk mengkaji maksud soalan Pemahaman saya: Dua objek a dan b tidak dibenarkan mempunyai pasangan nilai kunci yang sama

    .

    Maka penyelesaiannya adalah seperti berikut:

    var a = {age:1, spec:'hello'},
        b = {age:21, spec:'hello'};
        
    function noRepeat(obj1,obj2){
        var res = false;
        for(var key in obj1){
            if(obj1[key]==obj2[key]){
                res = true;
                break;
            }
        }
        return res;
    }
    
    noRepeat(a, b); // true

    Ini sama dengan kebenaran Bagaimana subjek soalan boleh menjawab soalan ini? Jika anda mempunyai sebarang soalan tambahan, sila tambahkannya~

    balas
    0
  • Batalbalas