最简单的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中callee与caller的用法和应用场景
Dec 08 Javascript
Javascript模块化编程(一)模块的写法最佳实践
Jan 17 Javascript
jquery实现商品拖动选择效果代码(自写)
May 28 Javascript
ECharts仪表盘实例代码(附源码下载)
Feb 18 Javascript
巧方法 JavaScript获取超链接的绝对URL地址
Jun 14 Javascript
微信小程序 devtool隐藏的秘密
Jan 21 Javascript
详解Vue中watch的高级用法
May 02 Javascript
jQuery实现输入框的放大和缩小功能示例
Jul 21 jQuery
Vue 与 Vuex 的第一次接触遇到的坑
Aug 16 Javascript
实例详解Vue项目使用eslint + prettier规范代码风格
Aug 20 Javascript
JQueryDOM之样式操作
Mar 27 jQuery
vue实现购物车的小练习
Dec 21 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
提示Trying to clone an uncloneable object of class Imagic的解决
2011/10/27 PHP
php中调用其他系统http接口的方法说明
2014/02/28 PHP
php中的curl使用入门教程和常见用法实例
2014/04/10 PHP
php计算给定时间之前的函数用法实例
2015/04/03 PHP
PHP微信支付实例解析
2016/07/22 PHP
快速解决PHP调用Word组件DCOM权限的问题
2017/12/27 PHP
Laravel数据库读写分离配置的方法
2019/10/13 PHP
jquery JSON的解析方式
2009/07/25 Javascript
javascript里模拟sleep(两种实现方式)
2013/01/25 Javascript
利用进制转换压缩数字函数分享
2014/01/02 Javascript
浅谈js停止事件冒泡 阻止浏览器的默认行为(阻止超连接 #)
2017/02/08 Javascript
Javascript面试经典套路reduce函数查重
2017/03/23 Javascript
webpack实现热加载自动刷新的方法
2017/07/30 Javascript
JS排序算法之冒泡排序,选择排序与插入排序实例分析
2017/12/13 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
2018/05/25 Javascript
vue仿element实现分页器效果
2018/09/13 Javascript
零基础学Python(一)Python环境安装
2014/08/20 Python
numpy使用fromstring创建矩阵的实例
2018/06/15 Python
对Python random模块打乱数组顺序的实例讲解
2018/11/08 Python
django 扩展user用户字段inlines方式
2020/03/30 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
魔幻般冒泡背景的CSS3按钮动画
2016/02/27 HTML / CSS
利用Node实现HTML5离线存储的方法
2020/10/16 HTML / CSS
德国家具在线:Fashion For Home
2017/03/11 全球购物
美国在线鞋类零售商:LifeStride
2019/06/09 全球购物
介绍一下JNDI的基本概念
2013/07/26 面试题
财务方面个人工作的自我评价
2013/12/28 职场文书
结婚邀请函范文
2014/01/14 职场文书
小小商店教学反思
2014/04/27 职场文书
教师工作自我鉴定范文
2014/09/14 职场文书
口才训练演讲稿范文
2014/09/16 职场文书
区长工作作风个人整改措施
2014/10/01 职场文书
党的群众路线教育实践活动个人对照检查材料(企业)
2014/11/05 职场文书
检讨书格式范文
2015/05/07 职场文书
mysql5.6主从搭建以及不同步问题详解
2021/12/04 MySQL
mysql 索引的数据结构为什么要采用B+树
2022/04/26 MySQL