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


Posted in Javascript onJanuary 10, 2019

工作久了,总会遇到各种各样的数据处理工作,比如同步数据,初始化一些数据,目前比较流行的交互数据格式就是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>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
为Yahoo! UI Extensions Grid增加内置的可编辑器
Mar 10 Javascript
基于jquery的兼容各种浏览器的iframe自适应高度的脚本
Aug 13 Javascript
Js 时间间隔计算的函数(间隔天数)
Nov 15 Javascript
js判断两个日期是否相等的方法
Sep 10 Javascript
js获取通过ajax返回的map型的JSONArray的方法
Jan 09 Javascript
jQuery控制网页打印指定区域的方法
Apr 07 Javascript
鼠标悬停小图标显示大图标
Jan 22 Javascript
不用一句js代码初始化组件
Jan 27 Javascript
vue实现简单表格组件实例详解
Apr 16 Javascript
Node.js应用设置安全的沙箱环境
Apr 23 Javascript
vue实现微信分享链接添加动态参数的方法
Apr 29 Javascript
鸿蒙系统中的 JS 开发框架
Sep 18 Javascript
puppeteer实现html截图的示例代码
Jan 10 #Javascript
其实你可以少写点if else与switch(推荐)
Jan 10 #Javascript
微信小程序提取公用函数到util.js及使用方法示例
Jan 10 #Javascript
浅谈JavaScript 代码简洁之道
Jan 09 #Javascript
react组件从搭建脚手架到在npm发布的步骤实现
Jan 09 #Javascript
微信小程序公用参数与公用方法用法示例
Jan 09 #Javascript
微信小程序实现的日期午别医生排班表功能示例
Jan 09 #Javascript
You might like
PHP通过COM使用ADODB的简单例子
2006/12/31 PHP
php miniBB中文乱码问题解决方法
2008/11/25 PHP
解析php函数method_exists()与is_callable()的区别
2013/06/21 PHP
PHP实现把文本中的URL转换为链接的auolink()函数分享
2014/07/29 PHP
PHP pthreads v3下worker和pool的使用方法示例
2020/02/21 PHP
在Javascript中为String对象添加trim,ltrim,rtrim方法
2006/09/22 Javascript
基于Jquery的文字自动截取(提供源代码)
2011/08/09 Javascript
js实现select跳转菜单新窗口效果代码分享(超简单)
2015/08/21 Javascript
JS实现兼容性好,自动置顶的淘宝悬浮工具栏效果
2015/09/18 Javascript
jQuery 更改checkbox的状态,无效的解决方法
2016/07/22 Javascript
简单实现JS倒计时效果
2016/12/23 Javascript
微信小程序 解决swiper不显示图片的方法
2017/01/04 Javascript
深入理解AngularJS中的ng-bind-html指令
2017/03/27 Javascript
BootStrap Table 后台数据绑定、特殊列处理、排序功能
2017/05/27 Javascript
node.js 核心http模块,起一个服务器,返回一个页面的实例
2017/09/11 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
基于vue-element组件实现音乐播放器功能
2018/05/06 Javascript
NodeJS使用Range请求实现下载功能的方法示例
2018/10/12 NodeJs
跨域解决之JSONP和CORS的详细介绍
2018/11/21 Javascript
使用NestJS开发Node.js应用的方法
2018/12/03 Javascript
JavaScript数据结构与算法之二叉树遍历算法详解【先序、中序、后序】
2019/02/21 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
JS校验与最终登陆界面功能完整示例
2020/01/13 Javascript
[43:35]TI4 循环赛第二日Liquid vs Fnatic
2014/07/11 DOTA
[01:10:30]DOTA2-DPC中国联赛正赛 Dragon vs Dynasty BO3 第一场 3月4日
2021/03/11 DOTA
Django自定义分页与bootstrap分页结合
2021/02/22 Python
Python中装饰器学习总结
2018/02/10 Python
python装饰器-限制函数调用次数的方法(10s调用一次)
2018/04/21 Python
python判断设备是否联网的方法
2018/06/29 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
详解html5 canvas 微信海报分享(个人爬坑)
2018/01/12 HTML / CSS
小学生安全保证书
2014/02/01 职场文书
遗体告别仪式主持词
2014/03/20 职场文书
2014年圣诞节寄语
2014/12/08 职场文书
与Windows10相比Windows11有哪些改进?值不值得升级?
2021/11/21 数码科技
Mysql中的触发器定义及语法介绍
2022/06/25 MySQL