Return 基于符号的数组中的 2 个数组

Return 2 arrays from array based on sign

我希望能够从一个初始数组中 return 2 个数组,当然它们的大小都相同。一种将所有负数替换为 0 并保留正数,另一种将所有正数替换为零并保留负数的绝对值 (pos)。

例如,如果 [2,-4,5,7],那么我希望能够得到 [2,0,5,7] 和 [0,4,0,0]它的。我意识到已经有一些帖子与此类似,但还没有真正找到解决方法或想到一个。建议表示赞赏!!

谢谢:)

你可以有一个returns数组数组的函数。函数的输入将采用一个数组。在该函数中,您可以创建 2 个数组。在 posArray 中,您可以从 inputArray 复制正数,在 negArray 中,您可以从 inputArray 复制负数。将其分配给 resArray ={posArray, negArray}。 Return resArray.

类似的东西?

const initArr = [2,-4,5,7];
const noNegative = initArr.map(value => {
    return value < 0 ? 0 : value;
});
const absolutes = initArr.map(value => {
    return value < 0 ? Math.abs(value) : 0;
});