JSON.parse()没有将我的PHP字符串转换为JavaScript对象

时间:2015-10-31 03:54:28

标签: javascript php

我已经使用json_encode()通过这个$ .post方法回显从PHP到JavaScript的关联数组:

$.post("php/myfile.php", {}, function(data){
    exercises = data;
    //exercises = json.parse(data);   // console -> Uncaught ReferenceError: json is not defined
    alert(typeof exercises);          // alerts -> String
    alert(exercises);                 // alerts -> {"1":"Bench Press","2":"Squat","3":"Deadlift"}
    alert(json.stringify(exercises)); // console -> Uncaught ReferenceError: json is not defined
});

出于某种原因,我无法使用json.parse()将字符串转换为JavaScript关联数组。

我的问题是什么?

1 个答案:

答案 0 :(得分:2)

您可以将json作为dataType传递给ajax调用,以便jQuery传递转换后的值

$.post("php/myfile.php", {}, function (exercises) {
    alert(typeof exercises); // alerts -> String
    alert(exercises);
}, 'json');

在您的代码中问题出现在json的情况下,它应该是JSON.parse()而不是json.parse()