您的当前位置:首页最简单的JS实现json转csv的方法

最简单的JS实现json转csv的方法

2020-11-27 来源:乌哈旅游

工作久了,总会遇到各种各样的数据处理工作,比如同步数据,初始化一些数据,目前比较流行的交互数据格式就是JSON,可是服务器中得到的JSON数据如果提供给业务人员看的话可能会非常不方便,这时候,转成CSV文件,可以方便的被Excel工具进行读写。另外就是,json转CSV之后,会很容易的同部到数据库中,这样也非常有用,当然,这些软件功能已经被人开发过了,但是网上的多数代码都比较复杂,那些在线的转换工具也有不少,但是考虑数据安全,还是尽量别往任何不相干的网站上传数据,要知道万一敏感数据泄露可能会对自己非常不利。这里放上比较简单的一种实现方式,供大家使用:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title>JSON to CSV</title>
 
 <script type="text/javascript">
 var json3 = { "d": "[{\"Id\":1,\"UserName\":\"Sam Smith\"},{\"Id\":2,\"UserName\":\"Fred Frankly\"},{\"Id\":1,\"UserName\":\"Zachary Zupers\"}]" }

 //var winners = '{}';
 var winnerObject = JSON.parse(json3);
 
 downloadJSON2CSV(winnerObject);

 function downloadJSON2CSV(objArray)
 {
 var array = typeof objArray != 'object' ? JSON.parse(objArray) : objArray;

 var str = '';

 for (var i = 0; i < array.length; i++) {
 var line = '';

 for (var index in array[i]) {
 line += array[i][index] + ',';
 }

 // 添加双引号
 // for (var index in array[i]) {
 // line += '"' + array[i][index] + '",';
 // }

 line.slice(0,line.Length-1); 

 str += line + '\r';
 }
 window.open( "data:text/csv;charset=utf-8," + str)
 }

 </script>

</head>
<body>
 <h1>This page onvert json to csv...</h1>
</body>
</html>
显示全文