JavaScript比较两个数组是否相等(多选题答案判断)

JavaScript 无法通过 ==  === 来判断数组是否相等。

const arr1 = [1, 2]
const arr2 = [1, 2]
console.log(arr1 == arr2)

// false

这就需要将数组转字符串,然后进行比较。

console.log(arr1.toString() == arr2.toString())

// true

如果使用了组件库,比如 element-ui 的 checkout 组件,选择顺序不同,得到的数组顺序就会不同。

['A', 'B', 'C']
['B', 'C', 'A']

这些比较出来也会是 false ,还需要对数组进行排序:

const arr1 = ['A', 'B', 'C']
const arr2 = ['B', 'C', 'A']
console.log(arr1.sort().toString() == arr2.sort().toString())

// true

这样就可以了。

未经允许不得转载:w3h5 » JavaScript比较两个数组是否相等(多选题答案判断)

赞 (0)
分享到: +

评论 沙发

换个身份

  • 昵称 (必填)
  • 邮箱 (选填)