将javascript字符串转换为二维数组
Convert a javascript string into a 2-dimensional array
这些数据来自使用jquery的getJSON方法的REST方法。
"[Date.UTC(2010,0,0,0,0,0,0), 157],[Date.UTC(2010,0,0,0,0,420,1), 157],[Date.UTC(2010,0,0,0,0,420,2), 282],[Date.UTC(2010,0,0,0,0,600,3), 282],[Date.UTC(2010,0,0,0,0,600,4), 125],[Date.UTC(2010,0,0,0,0,900,5), 125],[Date.UTC(2010,0,0,0,0,900,6), 282],[Date.UTC(2010,0,0,0,0,2100,7), 282],[Date.UTC(2010,0,0,0,0,2100,8), 125],[Date.UTC(2010,0,0,0,0,2400,9), 125],[Date.UTC(2010,0,0,0,0,2400,10), 295],[Date.UTC(2010,0,0,0,0,3600,11), 295],[Date.UTC(2010,0,0,0,0,3600,12), 125],[Date.UTC(2010,0,0,0,0,3900,13), 125],[Date.UTC(2010,0,0,0,0,3900,14), 288],[Date.UTC(2010,0,0,0,0,5100,15), 288],[Date.UTC(2010,0,0,0,0,5100,16), 125],[Date.UTC(2010,0,0,0,0,5400,17), 125]"
返回为字符串。我需要把它解析成二维数组。数组中的每一项都应该有一个日期和一个值。
我还可以完全控制REST方法,因此我可以更改数据返回的方式。我想尽快完成这个任务。
这是我们现在所做的,我认为可以改进:
var jqxhr = $.getJSON(getDataURL, function(dataResult) {
var result = dataResult;
result =result.replace(/']','[/g, ']:[');
result = result.replace(/')',/g, ');');
var tempArray = result.split(':');
var myarray = new Array();
myarray[0] = new Array(2); // Make the first element an array of two elements
for(i = 0; i < tempArray.length; i ++)
{
myarray[i] = tempArray[i].split(';');
myarray[i][1] = myarray[i][1].replace(/'"/g,'');
myarray[i][1] = myarray[i][1].replace(/']/g,'');
myarray[i][0] = myarray[i][0].replace(/'[/g,'');
}
})
尽管我将为此受到批评(eval
倾向于存在安全风险),但我还是会使用
var myarray = eval("[" + result + "]");
您应该使用JSON将数据从服务器返回到JS脚本。这将非常容易操作它作为一个数组
相关文章:
- 作为一个二维数组,从ajax接收
- 创建P5.js二维数组
- 如何在Javascript中从select标记的一系列选项中构建二维数组
- inArray,indexOf在二维数组中
- 比较二维数组js
- 将二维数组转换为单个数组
- 将字符串的一维数组转换为二维数组
- 将类似表的二维数组转换为对象 (JavaScript)
- JavaScript:将多维数组转换为二维数组
- 将长度为n的二维数组转换为级别为n的嵌套对象
- 将字符串转换为Javascript中的二维数组
- 将二维数组转换为对象
- 将JSON数据转换为二维数组
- 将javascript字符串转换为二维数组
- javascript数组转换为二维数组
- 将c#中的二维数组转换为javascript的Json字符串
- 使用JavaScript将一维数组转换为二维数组
- JavaScript:使用第一个“行”将二维数组转换为对象数组来定义属性
- 如何使用java脚本将变量转换为二维数组
- 将一维数组转换为二维数组