我正在使用Object.values()
创建一个数组。当将其与硬编码等效项进行比较时,它将返回false。
var newArr = Object.values({1: 50, 2: 50, 3: 0, 4: 0, 5: 0, 6: 0, 7: 0});
console.log(newArr); // [50, 50, 0, 0, 0, 0, 0];
var compareArr = [50, 50, 0, 0, 0, 0, 0];
console.log(compareArr); // [50, 50, 0, 0, 0, 0, 0];
console.log(newArr === compareArr); // false
我在这里缺少什么吗?还是应该不返回true?
答案 0 :(得分:1)
JavaScript比较非原始类型(在df =df.repartition(100)
for partition in df.toLocalIterator():
for row in partition:
send(row)
和==
上的引用)。数组不是原始类型。意味着如果它们不是同一实例,则比较将返回false。
答案 1 :(得分:1)
您可以使用JSON.stringify()
进行比较
var newArr = Object.values({
1: 50,
2: 50,
3: 0,
4: 0,
5: 0,
6: 0,
7: 0
});
var compareArr = [50, 50, 0, 0, 0, 0, 0];
console.log(JSON.stringify(compareArr) == JSON.stringify(newArr)); // true