在JS中检查另一个数组的正方形元素[重复]

问题描述 投票:0回答:1

我创建了一个程序来检查第二个数组是否是第一个数组的平方。在程序中,我使用了一个 square 变量 double 和有序元素,并与目标检查两者是否相同;如果它们相同,则返回 true。但缺失的部分是什么?您能检查并纠正吗?

function compareSqr(nums, target) {
  let square = nums.map((num) => num * num).sort((a, b) => (a - b));
  if (square == target) {
    return true
  } else {
    return false
  }
}
console.log(compareSqr([1, 2, 3, 4], [1, 4, 9, 16]))

javascript arrays data-structures
1个回答
0
投票

您正在尝试比较两个对象,但如果它们不共享相同的对象引用,那么您会得到不同的对象。

更好地将数组与其值进行比较。

function compareSqr(values, squares) {
    return values.every((value, index) => value ** 2 === squares[index]);
}

console.log(compareSqr([1, 2, 3, 4], [1, 4, 9, 16]));

© www.soinside.com 2019 - 2024. All rights reserved.