2014-12-22 188 views
0

從下面給定的對象 中刪除名爲「itemType」的屬性的方法是什麼?從數組中刪除對象

{ 
    "id": 19, 
    "cost": 10, 
    "items": 10, 
    "numbers": 10, 
    "status": false, 
    "hours": 10, 
    "itemType": { 
     "id": 16, 
     "name": "PC 350", 
     "description": "PC 350"   
    }, 
    "typeid": 12 
} 

,使最終數組應該像

{ 
    "id": 19, 
    "cost": 10, 
    "items": 10, 
    "numbers": 10, 
    "status": false, 
    "hours": 10,   
    "typeid": 12 
} 
+1

這裏沒有數組,沒有對象'itemtype'。然而,有一個對象有一個屬性'itemtype' – charlietfl

+0

感謝您的糾正。我編輯了問題 – forgottofly

+0

可能重複的[從JavaScript對象中刪除屬性](http://stackoverflow.com/questions/208105/remove- property-from-javascript-object) –

回答

2

這是objectarray。您可以使用delete這樣

var obj = { 
     "id": 19, 
     "cost": 10, 
     "items": 10, 
     "numbers": 10, 
     "status": false, 
     "hours": 10, 
     "itemType": { 
      "id": 16, 
      "name": "PC 350", 
      "description": "PC 350"   
     }, 
     "typeid": 12 
    } 

    delete obj.itemType; 
+0

Thanks @Alexander。 – forgottofly

0

無論是一個對象,你想從中刪除屬性,或者你有一個數組,並希望刪除一個值,刪除的方法是 -

delete obj.itemType //object. 
delete array[3] //delete 4th item from the array. 

注 - 您提供的結構不是數組,它是一個對象。

+0

'delete'不是陣列的好習慣 – charlietfl

+0

那麼最好的解決方案是什麼?@charlietfl? – forgottofly

+1

splice()。使用刪除不會刪除該索引,因此長度不會更改。試試這個'var a = [1,2,3]; 刪除a [1] console.log(a.length);' – charlietfl