我用角度编写代码,在一种情况下,json返回一个值,例如有效负载,我需要对其解密。
我有一个这样的有效载荷:


我需要解码。就像下面这样:
例如,部分$ B的有效值,我只需要值14,而$ s的值是-58,依此类推。
而且我不知道我能做到这一点。目前,我只剩下$。

 var payload = event.eventpayload;
 var dec = payload.split("$");

最佳答案

如果在$之后始终只有一个字符,则可以执行以下操作

var eventpayload="$ST$I0$O0$B14.00$M1$S-58$D0000.03$X_"
var earr = eventpayload.split("$").splice(1);
obj={};
for (var i=0; i < earr.length; i++) {
    obj[earr[i][0]] = earr[i].slice(1);
}
console.log(obj);


您也可以像这样解析所有值

var eventpayload="$ST$I0$O0$B14.00$M1$S-58$D0000.03$X_"
var earr = eventpayload.split("$").splice(1);
obj={};
for (var i=0; i < earr.length; i++) {
    obj[earr[i][0]] = parseFloat(earr[i].slice(1));
}
console.log(obj);

09-15 13:30