Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我不能在javascript中使用带有集合的数组?_Javascript_Arrays_Set - Fatal编程技术网

为什么我不能在javascript中使用带有集合的数组?

为什么我不能在javascript中使用带有集合的数组?,javascript,arrays,set,Javascript,Arrays,Set,考虑以下示例: let set = new Set() set.add([3, 6]) 如果我尝试使用set.has([3,6])我希望收到true但我得到了false,为什么?原因与[3,6]==[3,6]返回false的原因相同。为什么?,我真的想知道,在这种情况下我如何避免它?数组不按内容进行比较。它们作为对象进行比较,只有当它们是同一对象时才相等。Set.has使用相等检查来比较项目。这是否回答了您的问题?

考虑以下示例:

let set = new Set()
set.add([3, 6])

如果我尝试使用
set.has([3,6])
我希望收到
true
但我得到了
false
,为什么?

原因与
[3,6]==[3,6]
返回false的原因相同。为什么?,我真的想知道,在这种情况下我如何避免它?数组不按内容进行比较。它们作为对象进行比较,只有当它们是同一对象时才相等。
Set.has
使用相等检查来比较项目。这是否回答了您的问题?