Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Thuật toán JavaScript: Loại bỏ số âm khỏi mảng

Cho mảng X (ví dụ: [-3,5,1,3,2,10]). Viết hàm xóa tất cả giá trị âm trong mảng, chỉ dùng pop(), không tạo mảng tạm.

Mã thực hiện

// Loại bỏ số âm ở cuối
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]; // thay bằng phần tử cuối (du dương)
    x.pop();
  }
}

Kết quả

[ 1, 8, 9 ]