尝试更改对象内的元素值

时间:2019-09-10 11:53:21

标签: javascript

我正在尝试从本地存储中获取一些价值。该值由一个数组组成,该数组包含一些对象,这些对象包括主题内的元素, 我正在尝试更改其中一个对象内的特定elemnt值,并将其设置回本地存储。

let x = JSON.parse(localStorage.getItem("Checker"));
var y = JSON.parse(x);
var z = JSON.parse(y[1])

这是var z的值:

{task: " t", date: "2020-03-02", time: "01:01", number: 1}

我的问题是如何将正确设置为1的元素“数字”更改为4,并将其设置回本地存储?

4 个答案:

答案 0 :(得分:0)

将x更改为所需的值,然后使用:

localStorage.setItem('Checker', JSON.stringify(x))

答案 1 :(得分:0)

您可以使用JSON.stringyfy()方法将json对象设置回本地存储中。

let x = JSON.parse(localStorage.getItem("Checker"));
var y = JSON.parse(x);
var z = JSON.parse(y[1])

已编辑

    z.number = 4;
    y[1] = z
    console.log(y);
    localStorage.setItem("Checker " , JSON.stringify(y));

答案 2 :(得分:0)

[[processors.rename]] namepass = ["_http_elasticsearch_logs_dropping"] [[processors.rename.replace]] measurement = "_http_elasticsearch_logs_dropping" dest = "_http_elastic" [[processors.rename.replace]] field = "doc_count" dest = "buffer_flush_or_queue_size_errors" [[processors.rename]] namepass = ["_http_elasticsearch_microservice_logs"] [[processors.rename.replace]] measurement = "_http_elasticsearch_microservice_logs" dest = "_http_elastic" [[processors.rename.replace]] field = "doc_count" dest = "log_count" 是递归的,将其应用于JSON.parse时,它将应用于嵌套在其中的任何对象:

x

答案 3 :(得分:0)

向后退一步。像

// z == {task: " t", date: "2020-03-02", time: "01:01", number: 1}

z.number = 4;
y[1] = JSON.stringify(z);
localStorage.setItem("Checker", JSON.stringify(JSON.stringify(y)));

我想。

但是以这种方式存储数据只是在询问错误。