Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

remove element from array where element equal

for example i have this array

    var array1 = [{ uid=24433357, first_name="fname", last_name="lname", ...},
{ uid=4821888, first_name="fname", last_name="lname", ...},
{ uid=677614, first_name="fname", last_name="lname", ...},
{ uid=4789723, first_name="fname", last_name="lname", ...},
{ uid=444464, first_name="fname", last_name="lname", ...},
{ uid=767687867, first_name="fname", last_name="lname", ...}]

i want to remove element from array1 where uid = x

i have no idea how?

for normal arrays i know this method

array1.splice(index, count)
like image 715
Ruben Yeghikyan Avatar asked Nov 18 '25 16:11

Ruben Yeghikyan


1 Answers

Fix your objects first, the syntax is all wrong. See below and then use the Array#filter function to filter out the unwanted object by its uid

var array1 = [{ uid:24433357, first_name:"fname", last_name:"lname"},
    { uid:4821888, first_name:"fname", last_name:"lname"},
    { uid:677614, first_name:"fname", last_name:"lname"},
    { uid:4789723, first_name:"fname", last_name:"lname"},
    { uid:444464, first_name:"fname", last_name:"lname"},
    { uid:767687867, first_name:"fname", last_name:"lname"}];

ES5 not suitable for old browsers

array1 = array1.filter(function(o){
    return o.uid !== 24433357
});

Classic Way compatible with old browsers

for (var i = 0; i < array1.length; i++) {

    if (array1[i].uid === 24433357) {
        array1.splice(i, 1);
    }
}

console.log(array1);
like image 141
dcodesmith Avatar answered Nov 20 '25 07:11

dcodesmith



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!