javascript - 后端传过来的数据格式是这样,如何使用?
问题描述
问题:在项目中遇到后端传过来的数据格式是这样的,我该如何去获取BYMONTH中的值?
INTERVAL=8;BYMONTH=9;BYMONTHDAY=17
思考:自己想到的一个本办法是把它解析成JSON:
var str = 'INTERVAL=8;BYMONTH=9;BYMONTHDAY=17'; var fiStr = ’'’ + str.replace(/=/g,’':'’).replace(/;/g,’','’);var lastST = ’{’ + fiStr + ’'}’;var Obj = JSON.parse(lastST);console.log(Obj.BYMONTH)
提问: 请问这种拿到这样的数据格式,我该如何去处理?
问题解答
回答1:var res = {};str.split(’;’).map(function(v){ var i = v.split(’=’); res[i[0]]=i[1];});console.log(res[’BYMONTH’]);回答2:
'INTERVAL=8;BYMONTH=9;BYMONTHDAY=17'.split(';')[2].split('=')[1]
回答3:function getUrlParam(sUrl, sKey) { var result,Oparam = {}; sUrl.replace(/[;]?(w+)=(w+)/g,function($0,$1,$2){ Oparam[$1]=$2; }); sKey === void 0||sKey===’’ ? result=Oparam : result=Oparam[sKey]||’’; return result;}getUrlParam('INTERVAL=8;BYMONTH=9;BYMONTHDAY=17','BYMONTH') //9回答4:
我比较好奇的是 后端为什么不直接返回json格式?非得要在前端处理一遍。
相关文章:
