【问题标题】:how to access values in javascript's object?如何访问javascript对象中的值?
【发布时间】:2020-07-08 08:10:14
【问题描述】:

我正在尝试遍历对象中的值。

以下是对象的值:

object=Object.values(localStorage)[0];
console.log(object);

输出

{"name":"e7","id":"7","category":"n"}

我试过了:

console.log(object[0]);

但它只打印了"{"...然后我尝试了...object[name], object['name'] , object[0][0]...但输出并不令人满意...

我想遍历这些值,比如我想访问“名称”及其值等等......

我可以遍历 JavaScript 的各个值吗?

输出实际上是一个值..

【问题讨论】:

  • 你实际上没有一个对象,而是一个字符串。它是序列化的 JSON。你需要JSON.parse 来生成一个实际的对象。然后你可以像以前一样使用Object.values 获取它的值。
  • LocalStorage 只能存储字符串,不能直接存储对象。
  • “输出不令人满意”不是一个令人满意的问题描述。
  • 尝试 typeof 看看发生了什么

标签: javascript


【解决方案1】:

Local storage 只能存储字符串,所以你从中得到的只是一个 JSON 字符串,你必须先将其解析为 JavaScript 对象,然后才能像使用它一样使用它。

键和值总是字符串(请注意,与对象一样,整数键将自动转换为字符串)。

您可以通过调用JSON.parse()(文档here)来完成。

var fromLocalStorage = '{"name":"e7","id":"7","category":"n"}';

// Parse the JSON string from localStorage into a JS object
var object = JSON.parse(fromLocalStorage);

// Get a single property
console.log(object.name);

// Loop all the key-value pairs of the object
Object.keys(object).forEach(function(key) {
    console.log(key + ' -> ' + object[key]);
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-21
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 1970-01-01
    • 2013-12-02
    • 1970-01-01
    相关资源
    最近更新 更多