2014-01-23 84 views
-1

我有JSON對象在以下結構,如何刪除空值在JSON的對象數組

var i=[]; 

i={"details":"personal", "about":[null,{"Name":"prudhvi","age":"26"}, 

             {"Name":"siva","age":"28"} 

] 

} 

在下面的對象,如何刪除空?你可以請給這個代碼。

預先感謝您...

+0

可能重複(http://stackoverflow.com/questions/18587966/delete-null-value-from-json) –

回答

0

首先,你沒有一個 「JSON對象」,因爲there is no such thing。你有什麼是一個對象。

其次,請注意,在分配i = /*something else*/之後,分配i = [];毫無意義。

無論如何,如果你知道null值永遠是about數組中的第一個元素,然後只是這樣做:

i.about.splice(0,1); 

,找到並刪除任何和所有null值,無論他們可能在about陣列:

for (var j = i.about.length - 1; j >= 0; j--) 
    if (i.about[j] === null) 
     i.about.splice(j, 1); 
2

否則,如果你不知道一個數組中的位置,簡單的寫:

i.about = i.about.filter(function(x){return x !== null}); 

UPDATE內容

根據@nnnnnn評論更新。謝謝@nnnnnnn。

希望它可以幫助的[刪除JSON空值]

+1

難道你需要用' i.about = i.about.filter(...);'? '.filter()'創建一個新的數組。 (但是+1,因爲'.filter()'比我在答案中使用的'.splice()''for'循環更加整潔。) – nnnnnn

+0

「Fixed」,檢查更新。謝謝! –

+0

謝謝,它爲我工作 – Clindo