2 回答

TA贡献1900条经验 获得超5个赞
您可以映射dimBreak数组并创建所需的 html 标记。之后,您可以将生成的 html 标记注入到DOM.
PS As.map()函数返回一个数组,在将生成的 html 字符串插入之前DOM,对返回的数组调用.join()函数,将所有数组元素组合成一个字符串。
const obj = {
"556520000": {
"lmin": "35",
"dm": [
{ "Width": "147" },
{ "Depth": "10" },
{ "Height": "137" }
],
"lmax": "68",
}
};
var SKU = "556520000";
var dimBreak = obj[SKU]["dm"];
let charCode = 65; // A
const html = dimBreak.map(obj => {
const [key, value] = Object.entries(obj).flat();
return `
<li>
<span>${String.fromCharCode(charCode++)}</span>
${key}: ${value}
</li>
`;
});
const list = document.querySelector('#sku_DM ul');
list.innerHTML = html.join('');
<span id="sku_DM">
<ul>
</ul>
</span>

TA贡献1802条经验 获得超5个赞
从您的话中,我了解到您在渲染时不需要任何花哨的东西或任何类型的数据操作。为什么不使用一些旧的preHTML 标签?
const data = {
"556520000": {
"lmin":"35",
"dm":[
{
"Width":"147"
},
{
"Depth":"10"
},
{
"Height":"137"
}
],
"lmax":"68",
}
}
const dmset = Object.values(data).map(({ dm }) => dm)
document.querySelector('pre').innerHTML = JSON.stringify(dmset, null, 2)
<pre></pre>
添加回答
举报