Javascript json格式的ajax返回值问题

Javascript json格式的ajax返回值问题,javascript,php,jquery,json,Javascript,Php,Jquery,Json,我正在使用一些jQuerypost请求,也是这样 $.post('url', {data: some_data}, function(data, textStatus, jqXHR) { console.log(data); //to debug console.log(data.status == "ok"); //to debug .... }); url点击一些php方法,该方法返回 echo json_encode(array('status' => 'o

我正在使用一些
jQuery
post
请求,也是这样

$.post('url', {data: some_data}, function(data, textStatus, jqXHR) {
   console.log(data);  //to debug
   console.log(data.status == "ok");  //to debug
   ....
});
url
点击一些
php
方法,该方法返回

 echo json_encode(array('status' => 'ok'));
 exit;

问题是
console.log(data)
返回
{“status”:“ok”}
但是
console.log(data.status==“ok”)抛出false。怎么可能呢?

我认为您应该简单地使用Json解码:

data = JSON.parse(data);
然后您将能够进行比较
data.status==“ok”

$。post()只返回一个对象

$.post('url', {data: some_data}, function(data) {
   data = JSON.parse(data);//convert into JSON if data in string format
   console.log(data);  //to debug
   console.log(data.status == "ok");  //to debug
  ....
});

我也想到了这一点,但如果是这样,数据对象是否会像OP的场景一样返回“{”status:“ok”}”而不仅仅是{”status:“ok”}?