簡體   English   中英

在Javascript中將JSON字符串轉換為JSON對象數組

[英]Convert JSON string to array of JSON objects in Javascript

我想轉換這個字符串

{"id":1,"name":"Test1"},{"id":2,"name":"Test2"}

到2個JSON對象的數組。 我該怎么辦?

最好

使用jQuery:

var str = '{"id":1,"name":"Test1"},{"id":2,"name":"Test2"}';
var jsonObj = $.parseJSON('[' + str + ']');

jsonObj是您的JSON對象。

正如Luca指出的那樣,在你的字符串中添加額外的[]並使用下面的代碼:

var myObject = eval('(' + myJSONtext + ')');

要測試它,您可以使用下面的代碼段。

var s =" [{'id':1,'name':'Test1'},{'id':2,'name':'Test2'}]";
var myObject = eval('(' + s + ')');
for (i in myObject)
{
   alert(myObject[i]["name"]);
}

希望能幫助到你..

就如此容易。

var str = '{"id":1,"name":"Test1"},{"id":2,"name":"Test2"}';
 dataObj = JSON.parse(str);

在字符串的開頭和結尾追加[] 這將使它成為一個數組。 然后使用eval()或一些安全的JSON序列化程序來序列化字符串並使其成為真正的JavaScript數據類型。

您應該使用https://github.com/douglascrockford/JSON-js而不是eval() eval僅在您進行一些快速調試/測試時才會使用。

如果您使用jQuery,則可以使用它的parseJSON函數,並且優於JavaScript的本機eval()函數。

我知道很多人都在說使用eval。 eval()js函數將調用編譯器,這可能會帶來一系列安全風險。 最好盡可能避免使用它。 解析功能提供了更安全的替代方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM