我使用以下格式的JSON,我正试图插入到outlook / email客户端的正文中
location.href = "mailto:" + "[email protected]" + "?subject=" + "Notes" + "&body=" + JSON.stringify(data, null, 4);
给4个空间JSON.stringify(data, null, 4)
[
{
"page": "article_0_page_0",
"note": "Note 1"
},
{
"page": "article_0_page_1",
"note": "Note 2"
}
]
我想输出为
<b>article_0_page_0</b>\n\r
Note 1
<b>article_0_page_1</b>\n\r
Note 2
请给我们任何正则表达式解
编辑:我的尝试
var str = "";
for(var i=0; i<data.length; i++) {
str += "<strong>" + data[i].page + "</strong><br>" + data[i].note + "<br><br>";
}
你去吧
var json = [
{
"page": "article_0_page_0",
"note": "Note 1"
},
{
"page": "article_0_page_1",
"note": "Note 2"
}
];
var out = "";
for (var key in json) {
if (json.hasOwnProperty(key)) {
out += "<b>"+json[key].page+"</b>\r\n"+json[key].note+"\r\n\r\n";
}
}
console.log(out);
如果您的结构扁平,我认为上面的答案是可以的。
如果你想要一个更全面的电子邮件方法,我发现这个工作非常好。
const data = {...}
JSON.stringify( data, null, ' ' ).split( '\n' ).join( '<br>' );
这会转换成这样的东西
const json = {
"status": "ok",
"config": {
"gotIt": "yes",
"transform": [
null
]
}
}
变成这样的事情
{<br> "status": "ok",<br> "config": {<br>  "gotIt": "yes",<br>  "transform": [<br>   null<br>  ]<br> }<br>}
电子邮件客户端将呈现如下
{
"status": "ok",
"config": {
"gotIt": "yes",
"transform": [
null
]
}
}
这是通过使用JSON.stringify
中的附加参数来完成的,如果你想在这里阅读更多关于这些参数的信息,那么我很常见,这些参数就是link。