2013-11-26 119 views
-1

的cookie的内容是这样的:jQuery的分割字符串/数组

{"array":{"id":"19111539","user_id":"91"}},{"array":{"id":"2551172","user_id":"91"}} 

如何分割它具有:

[0]{"array":{"id":"19111539","user_id":"91"}} 
[1]{"array":{"id":"2551172","user_id":"91"}} 

我试图cookie.split( ''),但我不能弄清楚为什么它不以正确的顺序打印。

+0

看到http://jsfiddle.net/55T3z/1/ – Satpal

+0

这是什么结构?它应该在数组 –

+0

@Satpal你将他的内容改为包装数组。这就是我要求 –

回答

0

将括号括起来,这样它将是一个有效的JSON字符串,您可以解析。结果是具有两个对象的数组:

var cookie = '{"array":{"id":"19111539","user_id":"91"}},{"array":{"id":"2551172","user_id":"91"}}'; 

var arr = $.parseJSON('['+cookie+']'); 

console.log(arr[0]); 
console.log(arr[1]); 

演示:http://jsfiddle.net/Guffa/KWCA2/

+0

谢谢,这真的很方便。 – pt0

0

我假设在Cookie对象列表中存储为以逗号分隔的字符串。

var cookieVal = '{"array":{"id":"19111539","user_id":"91"}},{"array" {"id":"2551172","user_id":"91"}}'; // Cookie value 
    cookieVal = "[" + cookieVal + "]"; // Wrap it with Array brackets 
cookieVal = JSON.parse(cookieVal); 

这将使它们全部包裹在Array中。 Demo