最简单的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 相关文章推荐
javascript RadioButtonList获取选中值
Apr 09 Javascript
jQuery UI Dialog 创建友好的弹出对话框实现代码
Apr 12 Javascript
js实现图片放大缩小功能后进行复杂排序的方法
Nov 08 Javascript
javascript中this指向详解
Apr 23 Javascript
轻松掌握JavaScript中的Math object数学对象
May 26 Javascript
JS实现两周内自动登录功能
Mar 23 Javascript
vue-cli中的webpack配置详解
Sep 25 Javascript
Vue精简版风格概述
Jan 30 Javascript
angular5 子组件监听父组件传入值的变化方法
Sep 30 Javascript
对angularJs中ng-style动态改变样式的实例讲解
Sep 30 Javascript
vue+高德地图实现地图搜索及点击定位操作
Sep 09 Javascript
vue前端工程的搭建
Mar 31 Vue.js
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时间戳转换的示例
2014/03/31 PHP
PHP小教程之实现双向链表
2014/06/12 PHP
PHP计算指定日期所在周的开始和结束日期的方法
2015/03/24 PHP
php封装的表单验证类完整实例
2016/10/19 PHP
在PHP 7下安装Swoole与Yar,Yaf的方法教程
2017/06/02 PHP
PHP微信H5支付开发实例
2018/07/25 PHP
在php的yii2框架中整合hbase库的方法
2018/09/20 PHP
php实现记事本案例
2020/10/20 PHP
prototype 学习笔记整理
2009/07/17 Javascript
二叉树先序遍历的非递归算法具体实现
2014/01/09 Javascript
js对象继承之原型链继承实例
2015/01/10 Javascript
jquery实现点击变换导航样式的方法
2015/08/31 Javascript
jQuery实现分章节锚点“回到顶部”动画特效代码
2015/10/23 Javascript
分享两款带遮罩的jQuery弹出框
2015/12/30 Javascript
jQuery之简单的表单验证实例
2016/07/07 Javascript
js方法数据验证的简单实例
2016/09/17 Javascript
Node.js利用断言模块assert进行单元测试的方法
2017/09/28 Javascript
详解node child_process模块学习笔记
2018/01/24 Javascript
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
ES7之Async/await的使用详解
2019/03/28 Javascript
vuejs数据超出单行显示更多,点击展开剩余数据实例
2019/05/05 Javascript
Vue3.0 响应式系统源码逐行分析讲解
2019/10/14 Javascript
python获取本机mac地址和ip地址的方法
2015/04/29 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
2019/06/27 Python
Python3中urlencode和urldecode的用法详解
2019/07/23 Python
django连接oracle时setting 配置方法
2019/08/29 Python
python实现处理mysql结果输出方式
2020/04/09 Python
纯CSS打造(无图像无js)的非常流行的讲话(语音)气泡效果
2012/12/28 HTML / CSS
HTML5 History API 实现无刷新跳转
2016/01/11 HTML / CSS
HTML5实现自带进度条和滑块滑杆效果
2018/04/17 HTML / CSS
html5实现滑块功能之type=&quot;range&quot;属性
2020/02/18 HTML / CSS
Aerosoles爱柔仕官网:美国舒软女鞋品牌
2017/07/17 全球购物
计算机求职信
2014/07/02 职场文书
退休职工欢送会致辞
2015/08/01 职场文书
小学英语教师2015年度个人工作总结
2015/10/14 职场文书
详解Java实践之适配器模式
2021/06/18 Java/Android