Cho một dãy nhiều giá trị. Ví dụ -
[-3,5,1,3,2,10]
Chúng tôi được yêu cầu viết một hàm loại bỏ bất kỳ giá trị âm nào trong mảng. Khi chức năng kết thúc quá trình thực thi, mảng chỉ nên bao gồm các số dương.
Chúng tôi bắt buộc phải làm điều này mà không tạo một mảng tạm thời và chỉ sử dụng phương thức pop để loại bỏ bất kỳ giá trị nào trong mảng.
Do đó, hãy viết mã cho chức năng này -
Ví dụ
Mã cho điều này sẽ là -
// 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) { // replace this element with the last element (guaranteed to be positive) x[i] = x[x.length - 1]; x.pop(); } }
Đầu ra
Đầu ra trong bảng điều khiển sẽ là -
[ 1, 8, 9 ]