【问题标题】:Object Property Undefined in Javascript/ReduxJavascript/Redux 中未定义的对象属性
【发布时间】:2016-08-15 13:10:51
【问题描述】:

我使用redux本地存储来存储以下内容:

{"id":1,"first_name":"","last_name":"", “hobbies”:{}}

这是他们登录信息的存储方式:

 localStorage.setItem("token", JSON.stringify(response.data.user));

这就是我检索数据的方式:

  var user_info = localStorage.getItem(("token")); 

所以 user_info 能够显示以下内容:

  {"id":1,"first_name":"","last_name”:"", “hobbies”:{}, "created_at":"2016-08-03 18:03:23","updated_at":"2016-08-03 18:03:23"}

现在我想访问id,但是当我执行以下操作时:

    var id = JSON.stringify(user_info["id"]);    
    OR 
    var id = JSON.stringify(user_info.id);

我不断收到以下错误。访问像“id”这样的属性的正确方法是什么?

   undefined 

【问题讨论】:

  • 你必须使用JSON.parse 否则它只是一个字符串

标签: javascript object reactjs properties


【解决方案1】:

事实上你需要使用JSON.parse()而不是JSON.stringify()来解析一个JSON对象,然后在解析之后你就可以访问它的属性了。

var json = '{"id":1,"first_name":"","last_name":"", "hobbies":{}, "created_at":"2016-08-03 18:03:23","updated_at":"2016-08-03 18:03:23"}';
var id = JSON.parse(json).id;
document.write(id);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    • 2021-08-05
    • 1970-01-01
    • 2016-02-26
    相关资源
    最近更新 更多