从JSON响应中获取值

时间:2017-03-17 00:35:21

标签: javascript json ajax

如何从此响应中获取消息和状态值

{"errors":[{"code":3,"message":"Invalid login details"}],"status":"failure"}

我试过了:

data.message
data['errors'].message
data[0].message

data.status
data[0].status

编辑:

我正在解析像这样的res

 var data = jQuery.parseJSON(jQuery(res).find('#container').text());

 console.log(data.status);
 console.log(data.errors[0].message);

我解析的字符串是:

"{\"errors\":[{\"code\":3,\"message\":\"Invalid login details\"}],\"status\":\"failure\"}"

答案:

我得到的响应已经被编码为JSON,所以一旦我做了一个普通的回声并通过js保留了客户端的解析并从res中删除了斜线它现在按预期工作。谢谢大家的评论,因为它帮助我弄清楚我做错了什么

2 个答案:

答案 0 :(得分:0)

错误是一个数组,因此您需要通过索引访问它。



const data = {"errors":[{"code":3,"message":"Invalid login details"}],"status":"failure"}

console.log(
  data.errors[0].code,
  data.errors[0].message,
  data.status
)




答案 1 :(得分:0)

首先,你确定你有一个对象而不仅仅是一个JSON字符串吗?您可能需要调用JSON.parse(data);

然后看起来您正在寻找Bufferdata.errors[0].codedata.errors[0].message