判断数组对象的每个对象里面的值不重复,并且不能为空或者null或undefind

判断数组对象的每个对象里面的值不重复,并且不能为空或者null或undefind

 function valuesAreUnique(objArray) {
    
    
  let seenValues = new Set();
  for (let i = 0; i < objArray.length; i++) {
    
    
    let obj = objArray[i];
    // 检查对象属性值是否有空、null 或 undefined 值,如果有则返回 false
    for (let key in obj) {
    
    
      if (!obj[key] && obj[key] !== 0) {
    
    
        return false;
      }
    }
    // 检查对象属性值是否重复,如果有则返回 false
    for (let key in obj) {
    
    
      let value = obj[key];
      if (seenValues.has(value)) {
    
    
        return false;
      }
      seenValues.add(value);
    }
    // 清空记录当前已经出现过的值的集合
    seenValues.clear();
  }
  // 所有对象的属性值都满足条件,返回 true
  return true;
}

猜你喜欢

转载自blog.csdn.net/wzwzwz555/article/details/130124897