我有一个PHP数组,它的格式如下:
$jsonArray = array(
"facebook" => array("user" => "8", "user_id" => "10", "user_post" => "6"),
"twitter" => array("user" => "8", "user_id" => "10", "user_post" => "6")
);
然后,我完成了以下操作,以便可以访问数组
echo "<script type='text/javascript'>window.MyArray = ".json_encode($jsonArray).";</script>";
为了访问数组,我尝试了以下方法
alert(window.MyArray['facebook'][0]['user']);
然而,这似乎失败了,有什么方向吗?
window.MyArray['facebook'][0]['user']
--------------------------^^^
为什么需要[0]
?
使用这个:
window.MyArray['facebook']['user']
MyArray
给出这个:
{
"facebook": {
"user": "8",
"user_id": "10",
"user_post": "6"
},
"twitter": {
...
}
}
MyArray['facebook']
结果为以下数组:
{
"user": "8",
"user_id": "10",
"user_post": "6"
}
因此,MyArray['facebook']['user']
会导致 8
.
尝试以下方法:
alert(window.MyArray.facebook.user);
它会工作
您将 json 作为字符串传递,您需要将其转换为对象。为此,您可以使用 http://www.json.org/js.html