javascript - 无法访问 jQuery AJAX 调用中的对象属性

标签 javascript jquery ajax

当我调用这段代码时:

console.log(data);
console.log(data.email);

我得到这个结果:

{"userName":"2","email":"2","firstName":"2","lastName":"2","isAdmin":"0","isEnabled":"1"} index.php:162
undefined 

第一个 console.log(data); 输出正确。然后,我想访问 data 对象的 email 属性,为此我使用 console.log(data.email); .但是,正如您在上面看到的,它表示它是“未定义的”。

为什么我不能访问此属性(或任何属性)?注意:我也试过 data['email'] 也没有用。

最佳答案

我没有意识到 jQuery 不会自动将返回的 JSON 解析为对象。它只是一个 JSON 字符串。要修复,我只需要这样做:

data = JSON.parse(data);

跨浏览器:

data = $.parseJSON(data);

关于javascript - 无法访问 jQuery AJAX 调用中的对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19466819/

相关文章:

javascript - 在vue中删除列表中的对象时出错

javascript - 多个 CSS 动画 : How to avoid re-triggering one of them?

php - AJAX/PHP 投票系统 : Content not updating on first click

jQuery 延迟 AJAX 调用 : possible scope issue

javascript - Ajax:多次提交后防止刷新页面

javascript - 如何注入(inject)javascript并修改原生安卓浏览器谷歌搜索结果

javascript - 在javascript中向变量添加额外的对象?

javascript - 如何检测手机是否支持语言字体

javascript - 如何在 jQuery 中获取 POST 变量

javascript - 如何定义一个函数以便稍后在 Jquery 中使用它