/** * @param {objectList} [arr=[]] [要對比的數組對象] * @param {string} [field] [每一項要對比的字段] * @returns {boolean} [isNotEqual] [返回boolean值每一項是否相等] */ getEqual(arr = [], field) { if (arr.length && arr.length > 1) { // 超過一條再去校驗,只有一條不進行比較 let isNotEqual = false; let preValue = arr[0][field] || ''; // 默認第一項 for (let i = 0; i < arr.length - 1; i++) { const currValue = arr[i + 1] ? arr[i + 1][field] : ''; // 當前項 if (preValue && currValue && preValue !== currValue) { // 每一項比較 isNotEqual = true; } else { preValue = arr[i][field]; // 將當前項賦值給前一項 } } return isNotEqual; } return false; }
調用:如是否含有id不同項
const arrList = [ { id: '1', name: '測試1' }, { id: '1', name: '測試2' }, { id: '2', name: '測試3' } ]; // 調用 getEqual(arrList, 'id'); // true