remove element from array where element equal

arrays, javascript, jquery

Solution

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);

Problem

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) ```

Original source

Related problems