在JavaScript中从数组中删除负数

给定多个值的数组arr。例如-

[-3,5,1,3,2,10]

我们需要编写一个删除数组中所有负值的函数。函数完成执行后,数组应仅由正数组成。

我们需要这样做,而不创建临时数组,而仅使用pop方法删除数组中的任何值。

因此,让我们为该函数编写代码-

示例

为此的代码将是-

// strip all negatives off the end
while (x.length && x[x.length - 1] < 0) {
   x.pop();
}
for (var i = x.length - 1; i >= 0; i--) {
   if (x[i] < 0) {
      //将此元素替换为最后一个元素(保证为
      positive)
      x[i] = x[x.length - 1];
      x.pop();
   }
}

输出结果

控制台中的输出将为-

[ 1, 8, 9 ]