我正在尝试找到一种将每个对象彼此分离的方法。但是,当我将它们保存到json文件中时,它们全部融合在一起,简直一团糟。
我的文件看起来像这样:
我已经尝试了一些解决方案,但无济于事
if (status == google.maps.places.PlacesServiceStatus.OK)
{
let element = document.createElement('a');
for (var i = 0; i < results.length; i++)
{
//console.log('after / to createMarker');
createMarker(results[i]);
//console.log (results);
//var jsonData = JSON.stringify(createMarker.json);
//console.log(JSON.stringify(results).split('},{').join('}, {'));
//console.log(JSON.stringify(results).replace(/},{/g,'}, {'));
// var jsonData = JSON.stringify(results);
var jsonData = JSON.stringify(results).split('},{').join('}, {')
var filename = 'ficheirojson.json'
//console.log(results[0].formatted_address); //undefined
}
element.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(jsonData));
element.setAttribute('download', filename);
element.style.display = 'none';
document.body.appendChild(element);
element.click();
document.body.removeChild(element);
}
}
var json =
{
"nome": details.name,
"morada": details.formatted_address,
"coordenadas":
{
"latitude": latitude,
"longitude": longitude
}
};
我想要这样的代码漂亮易读:
{“ name”:“ John”,“ age”:30,“ car”:null},{“ name”:“ John”,“ age”:30, “ car”:null},{“ name”:“ John”,“ age”:30,“ car”:null},{“ name”:“ John”, “ age”:30,“ car”:null}
每个对象在不同的行中
预先感谢
答案 0 :(得分:0)
您可以使用.stringify
对象中提供的重载。
这意味着您需要更换:
JSON.stringify(results).split('},{').join('}, {')
收件人:
JSON.stringify(results, null, '\t');
这将使用制表符来模仿标准的漂亮印刷外观。
console.log(JSON.stringify({ uno: 1, dos: 2 }, null, '\t'));
有关更多详细信息,请参见documentation。