0
下面,如果我的代碼爲什麼它沒有根據if語句從數組中刪除對象?
var data = [
{
'Number': 'B20051209003301',
'Name': 'GGG'
}, {
'Number': 'A20051130027901',
'Name': 'BBB'
}, {
'Number': 'H20170206000056',
'Name': 'CCC'
}, {
'Number': 'K20051216000301',
'Name': 'AAA'
}, {
'Number': 'F20170120000056',
'Name': 'DDD'
}, {
'Number': 'A20051020032201',
'Name': 'EEE'
}, {
'Number': 'A20071005006001',
'Name': 'AAA'
}, {
'Number': 'D20170126000023',
'Name': 'AAA'
}, {
'Number': 'A20051020016601',
'Name': 'KKK'
}, {
'Number': 'A20051028007501',
'Name': 'LLL'
}
]
var removeUselessData = data;
data.map(function(element, index) {
if (element['Name'] === "AAA" || Number(element['Number'].slice(1, 5)) < 2011) {
removeUselessData.splice(index, 1);
}
});
console.log(removeUselessData);
結果打印我的終端上是
[ { Number: 'A20051130027901', Name: 'BBB' },
{ Number: 'H20170206000056', Name: 'CCC' },
{ Number: 'F20170120000056', Name: 'DDD' },
{ Number: 'A20071005006001', Name: 'AAA' },
{ Number: 'A20051020016601', Name: 'KKK' } ]
我希望它會刪除小數目比2011年的名稱不能爲「AAA」是什麼。
但結果仍然有他們。