【发布时间】:2016-10-16 09:42:10
【问题描述】:
我对javascript很陌生。我很困惑如何将这个操纵的字符串数组转换为实际的数组。由于它不是一个实际的数组,这个程序抛出
console.log(line)//[10,0],[80,0],[20,0],[11,20],
var MatrixAJobtime = JSON.parse(JSON.stringify("["+line+"]"));
console.log(arrdateline)//[10,0],[80,0],[20,0],[11,20],
var MatrixBJobDeadLine = JSON.parse(JSON.stringify("["+arrdateline+"]"));;
console.log(_.isArray(MatrixAJobtime)) //False
var m1 = MatrixAJobtime
m2 =MatrixBJobDeadLine
result = m1.map((a,i) => a.map((n,j) => n - m2[i][j]));
console.log(result);//[ [ -90, -36, -45 ], [ 8, -36, 0 ], [ 0, 0, 0 ] ]
结果 = m1.map((a,i) => a.map((n,j) => n - m2[i][j])); ^ TypeError: m1.map 不是函数
【问题讨论】:
-
这引发了我的错误
-
@wrarar : 你需要删除最后一个
,....var MatrixAJobtime = JSON.parse("[" + line.slice(0,-1) + "]");和var MatrixBJobDeadLine = JSON.parse(JSON.stringify("[" + arrdateline.slice(0,-1) + "]")); -
鉴于
var line = "[10,0],[80,0],[20,0],[11,20]",那么当您执行var MatrixAJobtime = JSON.parse(("["+line+"]"));时,您将得到一个正确的数组 -
你从哪里得到线路?更容易的是,不使用其他 genuin 格式的数据 id 的字符串表示,如数组。
标签: javascript arrays node.js matrix