如何将对象值从localstorage提取到JavaScript中的每一行

如何将对象值从localstorage提取到JavaScript中的每一行,javascript,html,local-storage,Javascript,Html,Local Storage,我想循环使用本地存储的对象(JSON.stringify),然后将它们打印到每一行(html)。每行获取一个对象,并将值打印到该行的每一列。 我不知道这是否有帮助,但它可能会帮助你更好地理解我试图解释的内容 var table2=document.getElementById('table'); 对于(var l=0;l

我想循环使用本地存储的对象(JSON.stringify),然后将它们打印到每一行(html)。每行获取一个对象,并将值打印到该行的每一列。 我不知道这是否有帮助,但它可能会帮助你更好地理解我试图解释的内容

var table2=document.getElementById('table');
对于(var l=0;l}
这里有一种方法。我使用JQuery克隆DOM节点(表行),但如果您确实需要在中这样做,您可以

请注意,由于XSS的原因,该代码在该代码段中不起作用,但您应该能够将其复制/粘贴到您控制的环境中,并且应该在该环境中起作用

var数据=[
{id:1,名称:“bob”,颜色:“blue”},
{id:2,名字:“卡尔”,颜色:“红色”},
{id:3,名字:“莎莉”,颜色:“薰衣草”}
];
window.localStorage.Rows=JSON.stringify(数据);
函数addRow(row){
var tr=$('#cloneme').clone().prop('hidden',false);
tr.find('.id').text(row.id);
tr.find('.name').text(row.name);
tr.find('.color').text(row.color);
tr.appendTo('表格');
}
var datafromloctorage=JSON.parse(window.localStorage.Rows);
dataFromLocalStorage.forEach(函数(thisrow){
addRow(thisrow);
});
#表{
边界间距:4px;
边界塌陷:分离;
}
th{
背景颜色:银色;
填充:.5em;
}
运输署{
边框:1px纯银;
}

身份证件
名称
喜爱的颜色
{{id}
{{name}}
{{color}}
下面是一个简单的“Vanilla.js”示例()说明了该过程。请注意,如果数据的属性顺序不完全相同,或者如果对象的属性数量不一致,则此示例将无法正确输出。这需要一些更具体的工程

HTML


名称
年龄
性别
JavaScript

(函数(){
"严格使用",;
风险值数据=[
{姓名:'Bob',年龄:40,性别:'M'},
{姓名:'James',年龄:26岁,性别:'M'},
{姓名:'Susan',年龄:37岁,性别:'F'}
];
var表、行、单元格;
table=document.getElementById('table');
对于(变量i=0;i
请注意,
localStorage
本机不支持
属性。您必须使用一些附加库。
localStorage
只是键/值存储。您可以使用详细方法(
localstorage.getItem()
localstorage.setItem()
)或更直接地:(
localstorage.foo=5;
localstorage.Rows=JSON.stringify(someArrayOrObject);
<div>
  <table id="table" class="table">
    <thead>
      <tr>
        <th>Name</th>
        <th>Age</th>
        <th>Gender</th>
      </tr>
    </thead>
    <tbody>
    </tbody>
  </table>
</div>
(function() {
  'use strict';

  var data = [
    { name: 'Bob', age: 40, gender: 'M' },
    { name: 'James', age: 26, gender: 'M' },
    { name: 'Susan', age: 37, gender: 'F' }
  ];

  var table, row, cell;

  table = document.getElementById('table');

  for (var i = 0; i < data.length; i++) {
    // insert a new row at the end of the table
    row = table.insertRow(-1);

    for (var prop in data[i]) {
      cell = row.insertCell();
      cell.innerText = data[i][prop];
    }
  }
})();