最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

使用javascript實現(xiàn)json數(shù)據(jù)以csv格式下載_javascript技巧

來源:懂視網(wǎng) 責(zé)編:小采 時間:2020-11-27 21:31:44
文檔

使用javascript實現(xiàn)json數(shù)據(jù)以csv格式下載_javascript技巧

使用javascript實現(xiàn)json數(shù)據(jù)以csv格式下載_javascript技巧:摘要: 最近有一個非項目的小需求,就是將項目開發(fā)分工文件化,方便后期管理維護。但是開發(fā)時,分工安排都是以json格式記錄的,所以就做了一個將json數(shù)據(jù)以csv格式下載到本地。 代碼: 代碼如下: download csv http://code.jquery.com
推薦度:
導(dǎo)讀使用javascript實現(xiàn)json數(shù)據(jù)以csv格式下載_javascript技巧:摘要: 最近有一個非項目的小需求,就是將項目開發(fā)分工文件化,方便后期管理維護。但是開發(fā)時,分工安排都是以json格式記錄的,所以就做了一個將json數(shù)據(jù)以csv格式下載到本地。 代碼: 代碼如下: download csv http://code.jquery.com
摘要:
  最近有一個非項目的小需求,就是將項目開發(fā)分工文件化,方便后期管理維護。但是開發(fā)時,分工安排都是以json格式記錄的,所以就做了一個將json數(shù)據(jù)以csv格式下載到本地。

代碼:

代碼如下:


download csv

download.js

代碼如下:
$(document).ready(function() {
"use strict";
var mo = {
init: function() {
$('.download').click(function() {
var data = $('#txt').val();
if (data === '') {
return;
}
mo.JSONToCSVConvertor(data, true);
});
},
JSONToCSVConvertor: function(JSONData, ShowLabel) {
var arrData = typeof JSONData !== 'object' ? JSON.parse(JSONData) : JSONData;
var CSV = '';
if (ShowLabel) {
var row = "";
for (var index in arrData[0]) {
row += index + ',';
}
row = row.slice(0, -1);
CSV += row + '\r\n';
}
for (var i = 0; i < arrData.length; i++) {
var row = "";
for (var index in arrData[i]) {
var arrValue = arrData[i][index] == null ? "" : '="' + arrData[i][index] + '"';
row += arrValue + ',';
}
row.slice(0, row.length - 1);
CSV += row + '\r\n';
}
if (CSV == '') {
growl.error("Invalid data");
return;
}
var fileName = "Result";
if (mo.msieversion()) {
var IEwindow = window.open();
IEwindow.document.write('sep=,\r\n' + CSV);
IEwindow.document.close();
IEwindow.document.execCommand('SaveAs', true, fileName + ".csv");
IEwindow.close();
} else {
var uri = 'data:application/csv;charset=utf-8,' + escape(CSV);
var link = document.createElement("a");
link.href = uri;
link.style = "visibility:hidden";
link.download = fileName + ".csv";
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
},
msieversion: function() {
var ua = window.navigator.userAgent;
var msie = ua.indexOf("MSIE ");
if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./)) // If Internet Explorer, return version number
{
return true;
} else { // If another browser,
return false;
}
return false;
},
main: function() {
mo.init();
}
};
mo.main();
});

小結(jié):
  注意json格式[{},{}],文件名是在js中定義的變量fileName。主要問題是他會自動添加一行空行,且每個元素都會在值前面加個'='。

下載下來的數(shù)據(jù)格式為:

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

使用javascript實現(xiàn)json數(shù)據(jù)以csv格式下載_javascript技巧

使用javascript實現(xiàn)json數(shù)據(jù)以csv格式下載_javascript技巧:摘要: 最近有一個非項目的小需求,就是將項目開發(fā)分工文件化,方便后期管理維護。但是開發(fā)時,分工安排都是以json格式記錄的,所以就做了一個將json數(shù)據(jù)以csv格式下載到本地。 代碼: 代碼如下: download csv http://code.jquery.com
推薦度:
標(biāo)簽: csv csv文件 csv格式
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top