var arr = [
{id:2,date:'2010-10-03',des:'goodday'},
{id:3,date:'2011-02-13',des:'badday'},
{id:4,date:'2011-04-03',des:'niceday'}
];
Now I want to delete {id:3,date:'2011-02-13',des:'badday'}
, and then the arr should be
var arr = [
{id:2,date:'2010-10-03',des:'goodday'},
{id:4,date:'2011-04-03',des:'niceday'}
];
How should I do?
var arr = [
{id:2,date:'2010-10-03',des:'goodday'},
{id:3,date:'2011-02-13',des:'badday'},
{id:4,date:'2011-04-03',des:'niceday'}
];
Now I want to delete {id:3,date:'2011-02-13',des:'badday'}
, and then the arr should be
var arr = [
{id:2,date:'2010-10-03',des:'goodday'},
{id:4,date:'2011-04-03',des:'niceday'}
];
How should I do?
Share Improve this question asked Apr 12, 2011 at 2:59 CynialCynial 6808 silver badges23 bronze badges3 Answers
Reset to default 15Assume the id fields in you Objects are unique you can do the following to delete it. The function to use is Splice:
var arr = [
{
id: 2,
date: '2010-10-03',
des: 'goodday'},
{
id: 3,
date: '2011-02-13',
des: 'badday'},
{
id: 4,
date: '2011-04-03',
des: 'niceday'}
];
for(var i=0; i<arr.length; i++){
if(arr[i].id == 3){
arr.splice(i, 1); //removes 1 element at position i
break;
}
}
console.log(arr);
//should give you
// var arr = [
// {id:2,date:'2010-10-03',des:'goodday'},
// {id:4,date:'2011-04-03',des:'niceday'}
// ];
See here:
http://wolfram.kriesing.de/blog/index.php/2008/javascript-remove-element-from-array
arr.splice(1,1);
will remove the object at arr[1]
,
and arr[2]
will slide into its place.