最簡(jiǎn)單的JS實(shí)現(xiàn)json轉(zhuǎn)csv的方法
工作久了,總會(huì)遇到各種各樣的數(shù)據(jù)處理工作,比如同步數(shù)據(jù),初始化一些數(shù)據(jù),目前比較流行的交互數(shù)據(jù)格式就是JSON,可是服務(wù)器中得到的JSON數(shù)據(jù)如果提供給業(yè)務(wù)人員看的話(huà)可能會(huì)非常不方便,這時(shí)候,轉(zhuǎn)成CSV文件,可以方便的被Excel工具進(jìn)行讀寫(xiě)。另外就是,json轉(zhuǎn)CSV之后,會(huì)很容易的同部到數(shù)據(jù)庫(kù)中,這樣也非常有用,當(dāng)然,這些軟件功能已經(jīng)被人開(kāi)發(fā)過(guò)了,但是網(wǎng)上的多數(shù)代碼都比較復(fù)雜,那些在線的轉(zhuǎn)換工具也有不少,但是考慮數(shù)據(jù)安全,還是盡量別往任何不相干的網(wǎng)站上傳數(shù)據(jù),要知道萬(wàn)一敏感數(shù)據(jù)泄露可能會(huì)對(duì)自己非常不利。這里放上比較簡(jiǎn)單的一種實(shí)現(xiàn)方式,供大家使用:
<!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] + ',';
}
// 添加雙引號(hào)
// 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>
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JS獲取鼠標(biāo)坐標(biāo)并且根據(jù)鼠標(biāo)位置不同彈出不同內(nèi)容
這篇文章主要介紹了js獲取鼠標(biāo)坐標(biāo)并且根據(jù)鼠標(biāo)位置不同彈出不同內(nèi)容的實(shí)例代碼,需要的朋友可以參考下2017-06-06
setInterval 不準(zhǔn)的原因及問(wèn)題解決方案
setInterval 是 JavaScript 中用于定時(shí)執(zhí)行任務(wù)的常用方法,本文主要介紹了setInterval 不準(zhǔn)的原因及問(wèn)題解決方案,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-02-02
常用的JavaScript驗(yàn)證正則表達(dá)式匯總
這篇文章主要是對(duì)常用的JavaScript驗(yàn)證正則表達(dá)式進(jìn)行了詳細(xì)的匯總介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-11-11
JavaScript隊(duì)列函數(shù)和異步執(zhí)行詳解
這篇文章主要為大家詳細(xì)介紹了JavaScript隊(duì)列函數(shù)和異步執(zhí)行的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
JS中Json數(shù)據(jù)的處理和解析JSON數(shù)據(jù)的方法詳解
JSON (JavaScript Object Notation)一種簡(jiǎn)單的數(shù)據(jù)格式,比xml更輕巧,這篇文章主要介紹了JS中Json數(shù)據(jù)的處理和解析JSON數(shù)據(jù)的方法詳解的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
JavaScript 函數(shù)的執(zhí)行過(guò)程
下面小編就為大家?guī)?lái)一篇JavaScript 函數(shù)的執(zhí)行過(guò)程。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05
js動(dòng)態(tài)移動(dòng)滾動(dòng)條至底部示例代碼
這篇文章主要介紹了使用js動(dòng)態(tài)移動(dòng)滾動(dòng)條至底部,需要的朋友可以參考下2014-04-04
JS跨域解決方案之使用CORS實(shí)現(xiàn)跨域
正常使用AJAX會(huì)需要正常考慮跨域問(wèn)題,所以偉大的程序員們又折騰出了一系列跨域問(wèn)題的解決方案,如JSONP、flash、ifame、xhr2等等。本文給大家介紹JS跨域解決方案之使用CORS實(shí)現(xiàn)跨域,感興趣的朋友參考下吧2016-04-04

