[英]Trying to change an element value inside an Object
我正在嘗試從本地存儲中獲取一些價值。 該值由包含對象的數組組成,該對象包含主題內的元素,我試圖在其中一個對象內更改特定元素的值並將其設置回本地存儲。
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,並將其設置回本地存儲?
將x更改為所需的值,然后使用:
localStorage.setItem('Checker', JSON.stringify(x))
您可以使用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));
JSON.parse
是遞歸的,當將其應用於x
,它將應用於嵌套在其中的任何對象:
var x = JSON.parse(localStorage.getItem("Checker"));
x[1].number = 4;
localStorage.setItem("Checker", JSON.stringify(x));
向后退一步。 就像是
// 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)));
我認為。
但是以這種方式存儲數據只是在尋找錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.