Làm cách nào để bạn xóa một giá trị cụ thể khỏi một mảng javascript?

Bài đăng này sẽ thảo luận về cách xóa lần xuất hiện đầu tiên của một giá trị đã cho khỏi một mảng trong JavaScript

1. Sử dụng chức năng Array.prototype.splice()

Phương thức splice() trong JavaScript thường được sử dụng để thêm hoặc xóa các phần tử tại chỗ khỏi một mảng. Ý tưởng là tìm một chỉ mục của phần tử cần xóa khỏi một mảng rồi xóa chỉ mục đó bằng phương thức splice() .

1

2

3

4

5

6

7

8

9

10

11

12

13

Mảng. nguyên mẫu. xóa = hàm(giá trị) {

    cái này. mối nối(cái này. indexOf(giá trị), 1);

}

 

var arr = [1, 2, 4, 2, 5];

var item = 2;

 

mảng. xóa(mục);

bảng điều khiển. log(arr);

 

/*

đầu ra. [ 1, 4, 2, 5 ]

*/

Tải xuống Chạy mã

 
Lưu ý rằng phương thức indexOf() trả về -1 nếu không tìm thấy giá trị đã cho trong mảng và mối nối sẽ xóa phần tử cuối cùng của mảng. Để xử lý trường hợp này, nên kiểm tra sự hiện diện của các phần tử trước khi gọi phương thức splice, như minh họa bên dưới.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

Mảng. nguyên mẫu. xóa = hàm(giá trị) {

    var index = this.indexOf(giá trị);

    nếu (chỉ mục . == -1) {

        cái này. mối nối(chỉ mục, 1);

    }

}

 

var arr = [1, 2, 4, 2, 5];

var item = 2;

 

mảng. xóa(mục);

bảng điều khiển. log(arr);

 

/*

đầu ra. [ 1, 4, 2, 5 ]

*/

Tải xuống Chạy mã

2. Sử dụng toán tử Trải rộng ES6 với cắt lát

Với ES6, bạn có thể sử dụng toán tử Trải rộng với phép cắt để tạo một mảng mới với phần tử đã bị xóa. Ý tưởng là chia mảng thành hai mảng con xung quanh phần tử cần loại bỏ. Sau đó hợp nhất cả hai mảng con bằng cú pháp trải rộng. Ví dụ mã sau đây cho thấy cách thực hiện điều này

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

hàm xóa(mảng, item)

{

    var index = arr.indexOf(mục);

    return [

 

        // một phần của mảng trước mục đã cho

        . . . mảng. lát(0, chỉ mục),

 

        // một phần của mảng sau mục đã cho

        . . . mảng. lát(chỉ mục + 1)

    ];

}

 

var arr = [1, 2, 4, 2, 5];

var item = 2;

 

arr = xóa(arr, item);

bảng điều khiển. log(arr);

 

/*

đầu ra. [ 1, 4, 2, 5 ]

*/

Tải xuống Chạy mã

3. Sử dụng toán tử Xóa

Toán tử xóa JavaScript xóa một thuộc tính khỏi một đối tượng. Nếu được gọi trên một mảng arr như delete arr[i], nó sẽ thay thế giá trị có tại chỉ mục i bằng một giá trị undefined. Nói cách khác, nó để lại một ô trống tại chỉ mục i. Lưu ý rằng việc sử dụng xóa không làm giảm độ dài của mảng hoặc cập nhật chỉ mục của các phần tử khác. Điều này được thể hiện dưới đây

Làm cách nào để xóa phần tử cụ thể khỏi mảng trong JavaScript mà không cần chỉ mục?

Xóa phần tử khỏi mảng bằng cách nối nó. if (idx. = -1) mảng. mối nối(idx, 1);

Làm cách nào để xóa phần tử khỏi mảng trong Java?

Không có phương thức cụ thể nào để xóa phần tử khỏi mảng. .
Xóa một phần tử khỏi Array bằng vòng lặp for. .
Xóa một phần tử mảng theo giá trị của nó. .
Xóa phần tử theo giá trị của nó khi mảng chứa các bản sao. .
Dịch chuyển các phần tử trong cùng một mảng. .
Xóa các phần tử khỏi ArrayList