SoFunction
Updated on 2025-02-28

Summary of four ways to delete an element in an array by JS

The first one: delete the last element

slice delete

var arr = [1,2,3,4,5]
var new_arr = (0, -1)
// arr => [1,2,3,4,5]
// new_arr => [1,2,3,4]
 
var arr = [1,2,3,4,5]
var new_arr = (0,  - 1)
// arr => [1,2,3,4,5]
// new_arr => [1,2,3,4]

splice delete

var arr = [1,2,3,4,5]
var new_arr = (-1)
// arr => [1,2,3,4]
// new_arr => [5]
 
var arr = [1,2,3,4,5]
var new_arr = (-1, 1)
// arr => [1,2,3,4]
// new_arr => [5]
 
var arr = [1,2,3,4,5]
var new_arr = ( - 1)
// arr => [1,2,3,4]
// new_arr => [5]
 
var arr = [1,2,3,4,5]
var new_arr = ( - 1, 1)
// arr => [1,2,3,4]
// new_arr => [5]

pop delete

var arr = [1,2,3,4,5]
()
// arr => [1,2,3,4]

for Delete

var arr = [1,2,3,4,5]
var new_arr = []
for (let i = 0, len = ; i < len; i++) {
    if (i < len - 1) {
        new_arr.push(arr[i])
    }
}
// arr => [1,2,3,4,5]
// new_arr => [1,2,3,4]

length delete

var arr = [1,2,3,4,5]
 =  - 1
// arr => [1,2,3,4]

The second type: delete the first element

slice delete

var arr = [1,2,3,4,5]
var new_arr = (1)
// arr => [1,2,3,4,5]
// new_arr => [2,3,4,5]

splice delete

var arr = [1,2,3,4,5]
var new_arr = (0, 1)
// arr => [2,3,4,5]
// new_arr => [1]

shift delete

var arr = [1,2,3,4,5]
()
// arr => [2,3,4,5]

The third type: delete a specified element in the array

filter delete

var arr = [1,2,3,4,5],
    element = 2
 
arr = (item => item != element)
// arr => [1,3,4,5]

splice delete

var element = 2,
    arr = [1,2,3,4,5]
 
((2), 1)
// arr => [1,3,4,5]

forEach, map, for Delete

var arr = [1,2,3,4,5],
    element = 2,
    new_arr = []
(item =&gt; (item != element &amp;&amp; new_arr.push(item)))
// new_arr =&gt; [1,3,4,5]
 
// map 
var arr = [1,2,3,4,5],
    element = 2,
    new_arr = []
 
for (let i = 0; i &lt; ; i++) {
    arr[i] != element &amp;&amp; new_arr.push(arr[i])
}
// new_arr =&gt; [1,3,4,5]

set delete

var arr = [1,2,3,4,5],
    element = 2
var new_set = new Set(arr)
new_set.delete(element)
var new_arr = [...new_set]
// new_arr => [1,3,4,5]

Fourth type: Delete the element specified in the array

splice delete

var delete_index = 2
var arr = [1,2,3,4,5]
// arr => [1,2,3,4,5]
var new_arr = (delete_index, 1)
// new_arr => [3]
// arr => [1,2,4,5]

for Delete

var delete_index = 2,
    arr = [1,2,3,4,5],
    new_arr = []
 
for (let i = 0, len = ; i < len; i++) {
    if (i != delete_index) {
        new_arr.push(arr[i])
    }
}
 
// arr => [1,2,3,4,5]
// new_arr => [1,2,4,5]

Notice:

1. You cannot use delete to delete an element in the array. This operation will cause sparse arrays, and the position of the deleted elements still exists, which is empty, and the length of the array remains unchanged.

2. You cannot use the forEach method to compare the subscript values ​​of the array, because forEach is unordered when looping.

Summarize

This is the end of this article about four ways to delete an element in an array by JS. This is the end of this article. For more related contents of JS deleting an element in an array, please search for my previous articles or continue browsing the related articles below. I hope everyone will support me in the future!