JavaScript 算法 - 从数组中删除负数

javascriptweb developmentfront end technologyobject oriented programming

给定一个包含多个值的数组 X(例如 [-3,5,1,3,2,10]),我们需要编写一个函数来删除数组中的所有负数。

一旦函数完成执行,数组应该只由正数组成。 我们需要在不创建临时数组的情况下执行此操作,而只使用 pop 方法删除数组中的任何值。

示例

以下是代码 −

// 从末尾删除所有负数
while (x.length && x[x.length - 1] < 0) {
   x.pop();
}
for (var i = x.length - 1; i >= 0; i--) {
   if (x[i] < 0) {
      // 用最后一个元素替换此元素(保证为正数)
      x[i] = x[x.length - 1];
      x.pop();
   }
}

输出

这将在控制台上产生以下输出 −

[ 1, 8, 9 ]

相关文章