JS将Array数组转化为轻量级JSON对象
2012-09-12 16:41
513 查看
//将Array数组转化为Json
function arrayToJson(o) {
var r = [];
if (typeof o == "string") return "\"" + o.replace(/([\'\")/g]\\])/g, "\\$1").replace(/(\n)/g, "\\n").replace(/(\r)/g, "\\r").replace(/(\t)/g,
"\\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();
}
function arrayToJson(o) {
var r = [];
if (typeof o == "string") return "\"" + o.replace(/([\'\")/g]\\])/g, "\\$1").replace(/(\n)/g, "\\n").replace(/(\r)/g, "\\r").replace(/(\t)/g,
"\\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();
}
相关文章推荐
- 1.js动态的往json数据添加新属性和值 2.JSON 和 JS 对象互转 3.对象转化为数组
- js遍历数组和对象,以及Json与String的转化
- js遍历拼接list集合对象,JSONArray数组
- arrayToJson将数组转化为json格式的js代码
- 前台的js对象数组传到后台处理。在前台把js对象数组转化为json字符串,在后台把json字符串解析为List<>
- js爬虫拿到的字符串数据转化成数组再转化成json对象
- 将JS对象或object对象转化为array数组
- js遍历拼接list集合对象,JSONArray数组
- JSON对象中的JSONObject和JSONArray以及与Map、String、数组的转化
- js中数据结构数组Array、映射Map、集合Set、对象、JSON
- 后台将对象转换为json格式,前台js解析json数据,将字符串转化为数组
- JSON对象中的JSONObject和JSONArray以及与Map、String、数组的转化
- 在js中循环输出php数组(传值的时候,数组转化为json,这样你可以遍历json对象。)
- js将数组对象转化为json格式的数组
- JS 将变量 转化为字符串的方法, 适用于所有类型,数组, JSON对象,函数和基本类型等
- JS中彻底删除json对象组成的数组中的元素
- JS解析json数据(如何将json字符串转化为数组)
- json格式的数据,和将数组转化成json对象问题
- JS解析json数据并将json字符串转化为数组的实现方法
- js中的json对象和字符串之间的转化