js數(shù)組轉json并在后臺對其解析具體實現(xiàn)
更新時間:2013年11月20日 16:49:33 作者:
這篇文章主要介紹了js數(shù)組轉json并在后臺對其解析具體實現(xiàn),有需要的朋友可以參考一下
想必大家在開發(fā)過程中也遇到類似問題,如果直接將js獲取的數(shù)組傳給后臺,后臺是無法區(qū)分數(shù)組的,因為js數(shù)組如果是二維的就是這樣的:1,張三,23,2,李四,26
所以在此對其解決方法進行整理。希望能給大家?guī)椭?/P>
首先需要在js里面對數(shù)組進行轉換為json格式
js代碼如下:
復制代碼 代碼如下:
/**
*js數(shù)組轉json
*
*/
function arrayToJson(o) {
var r = [];
if (typeof o == "string") return "/"" + o.replace(/([/'/"http://])/g, "http://$1").replace(/(/n)/g, "http://n").replace(/(/r)/g, "http://r").replace(/(/t)/g, "http://t") + "/"";
if (typeof o == "object") {
if (!o.sort) {
for (var i in o)
r.push(i + ":" + arrayToJson(o[i]));
if (!!document.all && !/^/n?function/s*toString/(/)/s*/{/n?/s*/[native code/]/n?/s*/}/n?/s*$/.test(o.toString)) {
r.push("toString:" + o.toString.toString());
}
r = "{" + r.join() + "}";
} else {
for (var i = 0; i < o.length; i++) {
r.push(arrayToJson(o[i]));
}
r = "[" + r.join() + "]";
}
return r;
}
return o.toString();
}
然后是在java后臺js該字符串后 對其進行json轉換。
復制代碼 代碼如下:
com.alibaba.fastjson.JSONArray mainArray=JSON.parseArray(info.getMainparame());
log.debug("數(shù)組大小:"+mainArray.size());
for(int i=0;i< mainArray.size();i++){
QybjProduceParam p=new QybjProduceParam();
com.alibaba.fastjson.JSONArray paramObject=(com.alibaba.fastjson.JSONArray)mainArray.get(i);
p.setParamename(paramObject.get(1).toString());
p.setParamevalue(paramObject.get(2).toString());
params.add(p);
}
info.setParams(params);
大家從java代碼里面 不難看出,是經(jīng)過2次轉換。每次都是轉為JSONArray對象。
如果是一維數(shù)組就只轉換一次。
您可能感興趣的文章:
- 小議Function.apply()之二------利用Apply的參數(shù)數(shù)組化來提高 JavaScript程序性能
- 使用apply方法處理數(shù)組的三個技巧[譯]
- JS解析json數(shù)據(jù)并將json字符串轉化為數(shù)組的實現(xiàn)方法
- 解析javascript 數(shù)組以及json元素的添加刪除
- jquery遍歷篩選數(shù)組的幾種方法和遍歷解析json對象
- js/jquery解析json和數(shù)組格式的方法詳解
- 關于JS數(shù)組追加數(shù)組采用push.apply的問題
- Jquery解析json字符串及json數(shù)組的方法
- 使用Function.apply()的參數(shù)數(shù)組化來提高 JavaScript程序性能的技巧
- Android解析json數(shù)組對象的方法及Apply和數(shù)組的三個技巧
相關文章
利用JS實現(xiàn)一個同Excel表現(xiàn)的智能填充算法
這篇文章主要給大家介紹了關于利用JS實現(xiàn)一個同Excel表現(xiàn)的智能填充算法的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-08-08
深入理解JavaScript系列(27):設計模式之建造者模式詳解
這篇文章主要介紹了深入理解JavaScript系列(27):設計模式之建造者模式詳解,建造者模式可以將一個復雜對象的構建與其表示相分離,使得同樣的構建過程可以創(chuàng)建不同的表示,需要的朋友可以參考下2015-03-03
使用window.prompt()實現(xiàn)彈出用戶輸入的對話框
window對象的最后一種對話框是提示對話框,它顯示了預先設置的信息并提供文本域供用戶輸入應答。它包括兩個按鈕,即Cancel和Ok,允許用戶用兩個相反的期望值來關閉這個對話框:取消整個操作或接收輸入到對話框中的文本2015-04-04
Map與WeakMap類型在JavaScript中的使用詳解
這篇文章主要介紹了Map與WeakMap類型在JavaScript中的使用,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11

