码迷,mamicode.com
首页 > 编程语言 > 详细

对象数组中判断是否重复值

时间:2020-04-21 13:19:29      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:eve   数组   event   function   遇到   return   admin   业务   操作   

项目上遇到这样的一个场景:ztree树形菜单的节点选中一个即作为一个单位并且要保证值的唯一,还可以删除某个值之后提交后台。
解决思路:1.设置一个空数组 2.声明一个flag(布尔值),确保唯一后以设置为true。在这个确保值为唯一性需要比对id。 3删除数组的任意一个值,用splice();
demo展示: var adminDept =[];
function onClick(event,treeId,treeNode){
  var hasDept = false;
  if (arr.length > 0) {
    for (var i = 0;i < arr.length;i++){
      var adminDept = arr[i];
      if (adminDept.id == treeNode.id) {
        hasDept = true;
        break;
      }
    }
  }
  if (hasDept) {
    return;
  }
  arr.push({
    id: treeNode.id,
    name: treeNode.name
  });
  //后面你需要做的业务实现操作

  。。。。。
}

删除操作: function deleteCurrent(id){
        if (arr.length > 0) {
          for (var i = 0;i < adminDepts.length;i++) {
            var adminDept = arr[i];
            if (adminDept.id == id) {
              arr.splice(i,1);
              break;
            }
          }
        }
      // 后面想做什么的业务

      。。。。。
    }

以上只是为了方便自己学习

对象数组中判断是否重复值

标签:eve   数组   event   function   遇到   return   admin   业务   操作   

原文地址:https://www.cnblogs.com/doufh610/p/12743567.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!