Как удалить дополнительный ',' из json

2014-01-27 3 views
0

У меня есть Java-карта, которую я конвертирую в json. Так выглядит мой сценарийКак удалить дополнительный ',' из json

var newVar = '['; 

for(var x in pdict.Stores){ 
    newVar += '{' + '"Store_ID":"' + x.ID + '",'; 
    newVar += '"inv list id":"' + x.inventoryList.ID + '",'; 
    newVar += '"Store Address":"' + x.address1 + '",'; 
    newVar += '"zip":"' + x.postalCode + '"},'; 
} 

newVar += ']'; 

pdict.Stores возвращает мне карту. При выполнении конкатенации последняя запятая добавляется в конце json, и json становится недействительным. Как бы я удалить последний «» до закрытия „]“

Вот выход

[{"Store_ID":"46305","inv list id":"jonesny-46305-inventory","Store Address":"739 Reading Avenue Suite #306","zip":"19610"},{"Store_ID":"48760","inv list id":"jonesny-46305-inventory","Store Address":"1665 State Hill Rd","zip":"19610"},{"Store_ID":"48811","inv list id":"jonesny-46305-inventory","Store Address":"1665 State Hill Road","zip":"19601"},{"Store_ID":"53046","inv list id":"jonesny-46305-inventory","Store Address":"2630 Westview Dr","zip":"19610"},] 

Я не могу использовать JQuery. Это должно быть решение на основе javascript.

+5

Почему вы не строите обычный Javascript-объект, а затем вызываете 'JSON.stringify'? – Joe

+0

@ joe - можете ли вы опубликовать несколько примеров? – soum

ответ

3

Не делайте этого.

Создайте новый объект, постройте его и сериализуйте его с помощью stringify.

var a = []; 
for(var x in pdict.Stores){ 
    var b = {}; 
    b.Store_ID = x.id; 
    b["inv list id"] = x.inventoryList.ID; 
    b["Store Address"] = x.address1; 
    b.zip = x.postalCode; 
    a.push(b); 
} 

return JSON.stringify(a); 
+0

@ Joe-- Я получаю null, когда проверяю длину a – soum

+0

Что вы имеете в виду? – Joe

Смежные вопросы