我有一个包含以下数据的文本文件:
[2, 3, 4]
[1, 3, 2]
当我使用 fs.read
读取文件时,我得到如下字符串:
'[2,3,4]'
'[1,3,4]'
因此,我的矩阵 mat
的长度是错误的。
代码:
var mat = [];
var fs = require('fs');
fs.readFile('./data/outfilename', function(err, data) {
if (err) throw err;
var array = data.toString().split(/\r?\n/);
for (var i = 0; i < array.length; i++) {
if (array[i].length > 0) {
mat.push(array[i]);
}
}
console.log(mat.length);
console.log(mat[0].length);
});
如何将读取行转换为包含数字的数组?
最佳答案
您可以使用JSON.parse
将数组中的字符串转换为数字数组:
var array = ['[2,3,4]', '[1,3,4]'];
mat = array.map(s => JSON.parse(s));
console.log(mat);
关于javascript - 将数组转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45426007/