测试所有数组项是否相等

.every 方法测试所有数组元素是否通过提供的谓词测试。

要测试所有对象是否相等,可以使用以下代码段。

[1, 2, 1].every(function(item, i, list) { return item === list[0]; }); // false
[1, 1, 1].every(function(item, i, list) { return item === list[0]; }); // true

Version >= 6

[1, 1, 1].every((item, i, list) => item === list[0]); // true

以下代码片段测试属性相等性

let data = [
  { name: "alice", id: 111 },
  { name: "alice", id: 222 }
];

data.every(function(item, i, list) { return item === list[0]; }); // false
data.every(function(item, i, list) { return item.name === list[0].name; }); // true

Version >= 6

data.every((item, i, list) => item.name === list[0].name); // true