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

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

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

(0)

相关推荐

  • Python中shapefile转换geojson的示例

    shapefile转换geojson import shapefile import codecs from json import dumps # read the shapefile def shp2geo(file="line出产.shp"): reader = shapefile.Reader(file) fields = reader.fields[1:] field_names = [field[0] for field in fields] buffer = [] for

  • JavaScript解析及序列化JSON的方法实例分析

    本文实例讲述了JavaScript解析及序列化JSON的方法.分享给大家供大家参考,具体如下: JSON 之所以这么流行,是因为 JSON 数据结构可以被解析为 JavaScript 对象.JSON 之前的 XML 数据结构要被解析,需要先解析成 DOM 文档,然后再从中提取出数据.相比之下,JSON 数据结构方便多咯O(∩_∩)O~ 所以 JSON 就成为 web 开发中,用于数据交换的事实标准. 1 JSON 对象 早期的 JSON 解析器是使用 JavaScript 的 eval() 函数

  • Python中GeoJson和bokeh-1的使用讲解

    GeoJson 文档 { "type": "FeatureCollection", "features": [ { "geometry": { "type": "Polygon", "coordinates": [ [ [ 3, 1 ], [ 3, 2 ], [ 4, 2 ], [ 4, 1 ], [ 3, 1 ] ] ] }, "type": &

  • Json转换工具类

    Json字符串是常用的数据格式,下面提供一个Json和JavaBean转换的工具类,它其实也是基于jackson的: package com.csdn.myboot.utils; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.JavaType; import com.fasterxml.jackson.databind.ObjectMapper; i

  • JSON字符串操作移除空串更改key/value的介绍

    对于JSON字符串的操作.移除键值.添加属性. //删除JSON对象value值 var json=[.....]; delete(json['key']); 或者 delete(json.key); //添加对象object json.object=value; 或者 json['object']=value; 如果数据是查询数据库得到的,那么可能会存在空值,for循环JSON数据挨个移除空值或者操作数据比较繁琐. 这时候可以使用for-in来循环属性 去除空值或者操作数据. function

  • Jquery遍历筛选数组的几种方法和遍历解析json对象,Map()方法详解以及数组中查询某值是否存在

    1.jquery grep()筛选遍历数组(可以得到反转的数组) // 1.jquery grep()筛选遍历数组(可以得到反转的数组) var array = [1,5,9,3,12,4,48,98,4,75,2,10,11]; var filterArray = $.grep(array,(currentValue) => { return currentValue > 10; }); console.log(`${filterArray}---${filterArray.length}`

  • Spring boot中自定义Json参数解析器的方法

    一.介绍 用过springMVC/spring boot的都清楚,在controller层接受参数,常用的都是两种接受方式,如下 /** * 请求路径 http://127.0.0.1:8080/test 提交类型为application/json * 测试参数{"sid":1,"stuName":"里斯"} * @param str */ @RequestMapping(value = "/test",method = Re

  • javascript json字符串到json对象转义问题

    在使用JavaScriptSerializer.Serialize 方法转json对象时,遇到一个问题,后台方法生成的json字符串中有没有转义的特殊字符代码: 而这些特殊的代码在使用javascript的转json对象方法时报错,为了讲这个转义的东西转义过来,折腾了半天.着实对javascript无语: 后台代转的对象是 Dictionary<string,string> DepartmentsExistTaskCounts 前台页面使用的MVC里的razor 写法,直接使用后台方法把数据转

  • JSON基本语法及与JavaScript的异同实例分析

    本文实例讲述了JSON基本语法及与JavaScript的异同.分享给大家供大家参考,具体如下: JSON 的语法可以表达三种类型的值. 简单值:与 JavaScript 语法相同,可以表示字符串.数值.布尔值以及 null,但不支持 JavaScript 的 undefined. 对象(复杂数据类型):是一组有序的键值对,每个键值对中的键可以是简单值,也可以是复杂数据类型的值. 数组(复杂数据类型):是一组有序的值的列表,可以使用数值索引来访问其中的值,这个值可以是任意类型(简单值.对象或数组)

  • js中对象和面向对象与Json介绍

    ECMA-262 把对象(object)定义为"属性的无序集合,每个属性存放一个原始值.对象或函数".严格来说,这意味着对象是无特定顺序的值的数组. 面向对象语言的要求 一种面向对象语言需要向开发者提供四种基本能力: 封装 - 把相关的信息(无论数据或方法)存储在对象中的能力 聚集 - 把一个对象存储在另一个对象内的能力 继承 - 由另一个类(或多个类)得来类的属性和方法的能力 多态 - 编写能以多种方法运行的函数或方法的能力 对象的创建和销毁都在 JavaScript 执行过程中发生

随机推荐