Chúng ta có một mảng chứa một số giá trị trống bên trong nó như thế này -
const arr = [43,534534,645,64,,645,64,,645,,645,,65,,645,,64];
Chúng ta bắt buộc phải viết một hàm Array pushAtEmpty () nhận vào một phần tử và đẩy nó vào chỉ mục trống đầu tiên mà nó tìm thấy trong mảng mà nó được sử dụng trong ngữ cảnh. Nếu không có khoảng trống nào, phần tử sẽ được đẩy vào cuối cùng của mảng.
Hãy viết mã cho chức năng này. Trước tiên, chúng tôi sẽ tìm kiếm chỉ mục của vị trí trống và sau đó thay thế giá trị ở đó bằng giá trị mà chúng tôi được cung cấp.
Ví dụ
const arr = [43,534534,645,64,,645,64,,645,,645,,65,,645,,64]; Array.prototype.pushAtEmpty = function(element){ let index; for(index = 0; index < this.length; index++){ if(arr[index] === undefined){ this.splice(index, 1, element); break; }; }; if(index === this.length){ this.push(element); } }; arr.pushAtEmpty(23); arr.pushAtEmpty(33); arr.pushAtEmpty(43); arr.pushAtEmpty(53); arr.pushAtEmpty(63); arr.pushAtEmpty(73); arr.pushAtEmpty(83); arr.pushAtEmpty(93); console.log(arr);
Đầu ra
Đầu ra trong bảng điều khiển sẽ là -
[ 43, 534534, 645, 64, 23, 645, 64, 33, 645, 43, 645, 53, 65, 63, 645, 73, 64, 83, 93 ]