我有一个cookie,用于在一个cookie中存储由逗号分隔的5个值。我可以按如下方式检索ExampleCookie的值(例如):
var CookieValue = readCookie('ExampleCookie'); //返回Foo,Bar,Foo1,FooFighter,Bar2
如何解析CookieValue以分配单个变量,以便我可以为5个部分中的每个部分分配一个变量?
我已经找到了使用PHP但不是javascript的方法。
提前感谢任何建议。
答案 0 :(得分:2)
使用String.split(分隔符)方法
var array = readCookie('ExCook').split(",");
参考: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/String/split
答案 1 :(得分:0)
你需要从字符串中创建一个数组:
CookieParams = CookieValue.split(",");
CookieParams[0] = Foo
CookieParams[1] = Bar
答案 2 :(得分:0)
您可以通过split()方法将CookieValue拆分为数组中的各个值。
var valList = CookieValue.split(','); // [“Foo”,“Bar”,“Foo1”,“FooFighter”,“Bar2”]
如果您希望将值分配给单个变量,则需要循环遍历数组并手动进行分配。
答案 3 :(得分:0)
JSON.stringify, and JSON.parse是您最干净的投注(imho)
var values = JSON.parse(readCookie('ExampleCookie'));
createCookie('ExampleCookie',JSON.stringify(values));
这具有能够在对象/数组中设置键值的额外好处。
假设您正在使用quirks mode中的功能,请确保您的Cookie值字符串不会超过大多数浏览器中的4000 char limit。
答案 4 :(得分:0)
我很快意识到这对斯普利特而言比关于cookie更多。这就是我提出来的事情。
var splits = ExampleCookie.split(",");
var slot1 = splits[0];
var slot2 = splits[1];
var slot3 = splits[2]; etc.