javascript - 添加键/值对失败,对象分配

标签 javascript jquery

我有一个对象存储在本地存储中。我想检索对象并向其添加键/值项。这是代码

 var testObject = { 'one': 1, 'two': 2, 'three': 3 };

// Put the object into storage
localStorage.setItem('testObject', JSON.stringify(testObject));

// Retrieve the object from storage
var retrievedObject = localStorage.getItem('testObject');

var newdata = JSON.parse(retrievedObject);
var obj2 = {"four":"4"};
Object.assign(newdata, obj2);

$.each(JSON.parse(retrievedObject), function (index, value) {
  console.log(index+"  "+value);
});

新项目未添加到 testObject。如何将项目添加到现有对象?

最佳答案

您正在成功更改 newdata 但您没有使用它。相反,您再次调用 JSON.parse(retrievedObject)

var testObject = { 'one': 1, 'two': 2, 'three': 3 };

// Put the object into storage
// Just use a variable because we cant use localstorage on snippet
var storage = JSON.stringify(testObject);

// Retrieve the object from storage
var retrievedObject = storage;

var newdata = JSON.parse(retrievedObject);
var obj2 = {"four":"4"};
Object.assign(newdata, obj2);

$.each(newdata, function (index, value) {
  console.log(index+"  "+value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

关于javascript - 添加键/值对失败,对象分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38859498/

相关文章:

php - 如何使用javascript隐藏子元素

javascript - 使用 d3 或 jquery 在 json 对象中有多少个不同的键对值

javascript - Adobe Air - 检测 javascript 事件

javascript - 返回 false 后确认对话框不起作用

javascript - 代码在结果中工作但在博客中不起作用

javascript - 使用 Knockout 的 Observable 更改后可见绑定(bind)不更新

javascript - jQuery 和 HTML : Script works from console yet does not run from file or &lt;script&gt;&lt;/script&gt;

javascript - 单击单选按钮时,元素内容更改为图像

jquery - jqGrid 有 afterSort 事件或类似的事件吗?

javascript - 更改文本区域中特定单词的颜色