javascript - js判断JSON对象中value存在重复值?
给我你的怀抱
给我你的怀抱 2017-06-12 09:32:44
[JavaScript讨论组]

JSON对象中specDesc的value值不能相同怎么判断

给我你的怀抱
给我你的怀抱

全部回复(4)
大家讲道理
if([...new Set(specList.map(item=>item.specDesc))].length < specList.length){
    console.log('有重复')
}
阿神

可以先遍历把 obj.specDesc的值push到一个数组中,然后 再写个函数判断这个数组里有没有重复的就行了

PHP中文网
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('不存在');
 }
}
仅有的幸福

直接判断不行吗? a['spec'] == b['spec'], 想比较所有key对应的value,那就是遍历其中一个的所有key,对照的找出另外一个的key的对应的value是否相等。

由于题主只发了个截图,不好研究题意,我的理解: a和b两个对象,不允许出现有一个键值对是相同的

那么解法如下:

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

差不多的这个道理,题主体会下? 有额外疑问麻烦补充~

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号