美文网首页Web 前端开发 让前端飞
判断某个字段的值与items数组内某一字段的值相同

判断某个字段的值与items数组内某一字段的值相同

作者: 故林青衫 | 来源:发表于2017-07-20 17:21 被阅读0次

       判断数组内某字段的值,是否与该字段的值相同,若不相同则添加数据进入数组;
       逻辑:通过for循环判断是否有相同,并设定一个key,有任何一条数据相同则key被创造,因此添加数据的时候,只需要判定key值是否存在,若key值未被创造,则添加一条数据进入数组;
       容易产生的bug:在循环内添加,不设定key,则不论数据是否具有此字段的值,都会被添加进去,且后续判断会覆盖前面判断。
       因此,最终的写法为下(待优化,或许有更好的方法);

                       var arrfk ={
                            bankCard:vm.fk_card_no,
                            id:'',
                            bankCardName:vm.fk_card_bankname
                        };
                        var arrhk ={
                            bankCard:vm.hk_card_no,
                            cardFromXd:'Y',
                            id:'000000',
                            hk_card_no_full:vm.hk_card_no_full,
                            bankCardName:vm.hk_card_bankname
                        };
                        for(var i=0;i<items.length;i++){
                            if(vm.hk_card_no == items[i].bankCard){
                                var newCardtrue = true;
                            }
                            if(vm.fk_card_no == items[i].bankCard){
                                var newCardfalse = true;
                            }
                        }
                        if(!newCardfalse){
                            vm.items = items.concat(arrfk);
                        }
                        if(!newCardtrue){
                            vm.items = items.concat(arrhk);
                        }
                        if(!newCardtrue &&!newCardfalse && vm.hk_card_no != vm.fk_card_no){
                            vm.items = items.concat(arrfk,arrhk);
                        }
                        if(newCardtrue && newCardfalse){
                            vm.items = items;
                        }

相关文章

网友评论

    本文标题:判断某个字段的值与items数组内某一字段的值相同

    本文链接:https://www.haomeiwen.com/subject/tckjkxtx.html