我正在使用带有 jquery 的 ajax 请求发出一个奇怪的行为,在 header 下面的代码中。无法在名为“status”的变量中检索到它似乎可以与另一个变量名一起正常工作,我想知道为什么 ?
$.ajax({
type: "GET",
url: myConnect.prototype.URL,
data: params,
error: this.errorHandler,
success: function(data){
response = JSON.parse(data);
status = response.STATUS;
if(status.SUCCESS){ //never true since status is not an object.
console.log('success !');
}
}
});
数据是:{"STATUS":{"SUCCESS":1,"DESCRIPTION":""}}
状态变量设置为字符串,我可以在 chrome 的 Watch Expression 视图中看到它的值:
status: "[object Object]"
但是,如果我将此变量称为“t”(或其他任何内容),则条件将为真,并且将记录“成功!'
有什么解释吗?
编辑:由 chrome 显示的响应解析对象:
response : Object
STATUS: Object
DESCRIPTION: ""
SUCCESS: true
_proto_: Object
_proto_: Object