最近在项目中遇到了一个问题,就是解析字符串成数组进行比对的,
比如:
{
"imageDetail": "123&234&&",
"imageType": "O&A&B&C"
}
imageType与imageDetail数据属于一一对应关系,
方案一:split("&")
将imageType用split方法(imageType.split("&"))分隔成数组是:['O','A','B','C']
将imageDetail用split方法(imageDetail.split("&"))分隔成数组是:['123','234']
发现解析后的数组不是一一对应的关系了,
方案一缺点:只能解析到"O&A&B&C"这个情况的数据,
不能解析"123&234&&",这个情况下后面的&空数据;
查阅相关知识之后,发现split方法可以指定分隔数量,即:split("&",10)这种情况
方案二:split("&",number)
将imageType用split方法(imageType.split("&"))分隔成数组是:['O','A','B','C']
将imageDetail用split方法(imageDetail.split("&",imageType.split("&").length))分隔成数组是:['123','234','','']
发现解析后的数组是一一对应的关系了
在此记录错误点