Maison > Questions et réponses > le corps du texte
Question : Dans le projet, le format de données transmis depuis le backend est le suivant. Comment puis-je obtenir la valeur dans BYMONTH ?
INTERVAL=8;BYMONTH=9;BYMONTHDAY=17
Réflexion : Une méthode simple à laquelle j'ai pensé consiste à l'analyser en 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)
Question :
Comment dois-je gérer ce format de données ?
怪我咯2017-06-30 09:58:44
var res = {};
str.split(';').map(function(v){
var i = v.split('=');
res[i[0]]=i[1];
});
console.log(res['BYMONTH']);
黄舟2017-06-30 09:58:44
function getUrlParam(sUrl, sKey) {
var result,Oparam = {};
sUrl.replace(/[\;]?(\w+)=(\w+)/g,function(rrreee,,){
Oparam[]=;
});
sKey === void 0||sKey==='' ? result=Oparam : result=Oparam[sKey]||'';
return result;
}
getUrlParam("INTERVAL=8;BYMONTH=9;BYMONTHDAY=17","BYMONTH") //9
大家讲道理2017-06-30 09:58:44
Ce qui m'intéresse le plus, c'est pourquoi le backend ne renvoie pas directement le format json ? Il doit être traité en amont.