【发布时间】:2011-10-29 02:33:09
【问题描述】:
我有一个 PHP 数组并使用 json 编码将其回显到 javascript 中,我需要这样做,因为它会非常动态。这是它回显的代码:
{"notempty":true}
我用它把它转换成javascript:
var myarray = eval('(' + json + ')');
由于某种原因,它创建了一个对象而不是数组,因此我不能使用 .length 或 for 循环。
有人知道我在这里做错了什么吗?
谢谢
【问题讨论】:
-
在 JS 枚举数组(或 PHP 中的枚举数组)中的行为类似于对象
-
原因是 JavaScript 中不能有关联数组。对象是最接近的匹配项。
-
不要使用 eval。使用像 jQuery 的 api.jquery.com/jQuery.parseJSON 这样的 JSON 解析方法或使用 Douglas Crockford 的 parseJSON 方法。见github.com/douglascrockford/JSON-js(下载json2.js)
标签: php javascript arrays json object