嗨,我从asp获取字符串值,然后将字符串值传递给json.Now我想转换为array.Here是我的代码

     var dataset = [{
    "measure": "Sheet",
    "interval_s": 365 * 24 * 60 * 60,
     "data": $(function () {
        $("<%=lbl.ClientID%>").load(function () {
            var string = $( document.getElementById("<%=lbl.ClientID%>")).innerHTML();
            var splitstr = string.split(',');
            var result = "";
            for (i = 0; i < splitstr.length; i++) {
                result += (splitstr[i]);
            }
        })
    })

    }];


字符串输入是

** ['2018-09-17 09:45:47',1,'2018-09-17 10:19:24'],['2018-09-17 15:53:30',1,'2018 -09-17 17:35:55'],['2018-09-17
18:54:15',0,'2018-09-17 18:55:19'] **

我需要的输出是数组格式

 ['2018-09-17 09:45:47',1,'2018-09-17 10:19:24'],
  ['2018-09-17 > 15:53:30',1,'2018-09-17 17:35:55'],
 ['2018-09-17 18:54:15',0,'2018-09-17 18:55:19']

最佳答案

好吧,这很大程度上取决于输入字符串的外观。假设它始终采用['2018-09-17 09:45:47',1,'2018-09-17 10:19:24'],['2018-09-17 15:53:30',1,'2018-09-17 17:35:55'],['2018-09-17 18:54:15',0,'2018-09-17 18:55:19']格式,则分割后的字符串会捕获所有逗号-即使在括号[..,..],..中也是如此。

您可以将拆分后的字符串更改为"],[",并删除第一个数组元素的第一个字符和最后一个数组元素的最后一个字符。

var string = $( document.getElementById("<%=lbl.ClientID%>")).innerHTML();
var array = string.split('],[').map(function(str, index, array) {
  if(index === 0) {
    return str.substring(1);
  } else if (index === array.length -1) {
    return str.substring(0, str.length -1);
  } else {
    return str;
  }
});

关于javascript - 将字符串转换为asp中的json数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52400300/

10-13 06:33