Foreach element Javascript json

Foreach element Javascript json

本文关键字:json Javascript element Foreach      更新时间:2023-09-26

我得到了这样的JSON:

{
    "email.com": ["email@email.com|username'r"],
    "email.de": ["email@email.de|username"]
}

我想把它打印成这样:

email.com
电子邮件.de

var data = '{"email.com":["email@email.com|username'r"],"email.de":["email@email.de|username"]}';
var obj = JSON.parse(data);
for (i = 0; i < obj.length; i++) {
  document.getElementById('types').innerHTML += '<br>' + obj[i]; // I want to get email.com , email.de
}
<div id="types">
</div>

这很好用:

var data = '{"email.com":["email@email.com|username''r"],"email.de":["email@email.de|username"]}';
var obj = JSON.parse(data);
var keys = Object.keys(obj);
for (i = 0; i < keys.length; i++) {
  document.getElementById('types').innerHTML += '<br>' + keys[i]; // I want to get email.com , email.de
}
<div id="types"></div>

var data = [{"email.com":["email@email.com|username'r"],"email.de":["email@email.de|username"]}];
var term = (Object.keys(data[0])[0]);
var obj = JSON.parse(data);
for (i = 0; i < obj.length; i++) {
  document.getElementById('types').innerHTML += '<br>' + obj[i][term]; // I want to get email.com , email.de
}

这应该工作

打印对象';s键和值

使用String.matchArray.join函数的简单解决方案:

var data = '{"email.com":["email@email.com|username'r"],"email.de":["email@email.de|username"]}',
    emails = data.match(/'w+'.'w+(?='":'[)/g).join("<br>");
    
document.getElementById('types').innerHTML += '<br>' + emails;
// 'emails' variable contains "email.com<br>email.de"
<div id="types"></div>

快速:

var obj = {
    "email.com": ["email@email.com|username'r"],
    "email.de": ["email@email.de|username"]
};
for (var prop in obj)  console.log(prop);