JS 字符串转换为json格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS 字符串转换为json格式相关的知识,希望对你有一定的参考价值。
你好,
1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:46&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:50&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:54&
上面是从后台得到的数据,是拼接成字符串的,请问我可以用js把这转换成json格式吗,谢谢
var str = "1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:46&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:50&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:54";
var mapArr = str.split('&');//吧每一行都分开来
mapArray = mapArray.map(function(itemStr)
return itemStr.split('*');//在按照*号分开每列的值
);
//这样就得到了一个二维数组
//mapArray = [
// ['1' , '无sim卡或卡无效' , '已经连接' , '5' , '2014-01-10 09:23:46'],
// ['1' , '无sim卡或卡无效' , '已经连接' , '5' , '2014-01-10 09:23:50']
// .....
//]
//关于处理的时候,你就自己对应着取值呗追问
你好,你这方法我试了不行的呢,得不到任何值,还提示mapArray未定义,我定义后还是报错
追答你还真的是一点都不看代码啊,闭着俩眼睛写代码呢
var mapArray = str.split('&');//这里定义名(mapArray)写错了
mapArray = mapArray.map(function(itemStr)
return itemStr.split('*');
);
console.log(mapArray);追问
你好,mapArray写错了还真没注意到,
我一直在火狐下测试都正常,不过现在到IE下测试问题来了,
提示 “mapArray = mapArray.map(function(itemStr)”
提示这一行“对象不支持此属性或方法”,
是不是这还有兼容问题啊,麻烦了
你IE多少版本的啊?
IE8以下是不支持map方法的
替代方法
if(!Array.prototype.map)Array.prototype.map = function(callback)
var results = [];
for(var i=0; i<this.length; i++)
results.push(callback(this[i] , this));
return results;
var str = "1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:46&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:50&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:54";
var mapArray = str.split('&');
mapArray = mapArray.map(function(itemStr)
return itemStr.split('*');
);
console.log(mapArray); 参考技术B var str = "1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:46&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:50&1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:54&";
var arr = str.split("*");
arr 就是数组格式的json格式
json: 数组,对象追问
你好,1*无sim卡或卡无效*已经连接*5*2014-01-10 09:23:46 每行的1要单独提取出来的,后面的 要放到表格里,
也就是无sim卡或卡无效已经连接52014-01-10 09:23:46
以&结尾的算一行,转换为json不知道怎么样一行放到表格里,麻烦帮我下,非常感谢
我也不知道你的显示的总体样子啊
这么多&,
以上是关于JS 字符串转换为json格式的主要内容,如果未能解决你的问题,请参考以下文章