0

我正在从 PHP 中将一些数据保存在 assoc 数组中。有一些 Id 放在一个数组中,然后是 json_encoded:

$ids = array(id => id, id2 => id2);
json_encode($ids);
store in the cookie ...

我正在为 jQuery 使用这个插件:http: //plugins.jquery.com/cookie/

这是字符串,存储在 cookie 中的值为:“xxx”

%7B%2222504454%22%3A22504454%7D

path: "/"

domain: ".domain.com"

当我使用这个时:

var test = $.cookie( 'xxx');

我只收到Object退货。

如何读取这个数组?

4

1 回答 1

3

JSON和 JavaScript 不支持“关联Array1 。它们的等价物.Object

<?php echo json_encode(array(id => 'foo', id2 => 'bar')); ?>
{ "id": "foo", "id2": "bar" }

它们Array的 s0是具有索引 from to的排序集合,length - 1可以从非关联数组生成。

<?php echo json_encode(array('foo', 'bar')); ?>
[ "foo", "bar" ]

笔记:

  1. JavaScriptArray可以在实例化后被赋予非数字键,尽管这样的键不会被计算在length.

除了这个区别:要将其cookie视为一个Objector Array,您需要使用JSON.parse()or解析它$.parseJSON()

var test = JSON.parse($.cookie('xxx'));

console.log(test.id);
console.log(test.id2);
于 2013-08-19T16:43:14.977 回答