[英]How to get object values in a specified manner by with keys and values
i wanted print the string in a specifed manner but i'm not finding any convenient solution. 我想以指定的方式打印字符串,但找不到任何方便的解决方案。
I'm expecting below result: 我期望以下结果:
<h1>new_data</h1> <h4>print:</h4> <span>inv_val_ads_details_brand,auth_sign</span> <h4>report:</h4> <span>value_ads_report,per_day_volume_billing</span> <h4>media:</h4> <span>media,auto_generated_media</span> <hr> <h1>old_data</h1> <h4>media:</h4> <span>meta_data</span> <h4>order:</h4> <span>cg_counter,sub_vertical</span>
here is what i have tried: 这是我尝试过的:
var data = { "new_data": { "print": { "inv_val_ads_details_brand": true, "auth_sign": false }, "report": { "value_ads_report": true, "per_day_volume_billing": false }, "media": { "media": false, "auto_generated_media": true } }, "old_data": { "media": { "meta_data": false }, "order": { "cg_counter": true, "sub_vertical": false } } }; var str = ''; Object.keys(data).map(function(key) { str += '<h1>'+key+'</h1>'; console.log('main heading...',key); Object.keys(data[key]).map(function(val){ console.log('values',val); }); });
Question : snippet 1 output i'm expecting 问题 :我期望的片段1输出
Please help me thanks in advance !!!!! 请提前帮助我!
As you don't return anything, use forEach
instead of map
, and doing something like this would give the output you asked for 由于您未返回任何内容,因此请使用
forEach
而不是map
,并且执行类似的操作将得到您要求的输出
Stack snippet 堆栈片段
var data = { "new_data": { "print": { "inv_val_ads_details_brand": true, "auth_sign": false }, "report": { "value_ads_report": true, "per_day_volume_billing": false }, "media": { "media": false, "auto_generated_media": true } }, "old_data": { "media": { "meta_data": false }, "order": { "cg_counter": true, "sub_vertical": false } } }; var str = ''; Object.keys(data).forEach(function(key) { str += '<h1>' + key + '</h1>'; Object.keys(data[key]).forEach(function(val) { str += '<h4>' + val + ':</h4>'; Object.keys(data[key][val]).forEach(function(val2, idx) { if (idx > 0) str += ','; str += '<span>' + val2 + '</span>'; }); }); }); document.body.innerHTML = str;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.