The best way to remove array element by value

后端 未结 10 1343
北荒
北荒 2020-12-25 10:18

I have an array like this

arr = [\"orange\",\"red\",\"black\",\"white\"]

I want to augment the array object defining a deleteElem()<

10条回答
  •  心在旅途
    2020-12-25 10:25

    Here you go:

    arr.deleteElem = function ( val ) {
        for ( var i = 0; i < this.length; i++ ) {
            if ( this[i] === val ) {
                this.splice( i, 1 );
                return i;
            }
        }
    };
    

    Live demo: http://jsfiddle.net/4vaE2/3/

    The deleteElem method returns the index of the removed element.

    var idx = arr.deleteElem( 'red' ); // idx is 1
    

提交回复
热议问题