javascript - 将数组转换为字符串

标签 javascript arrays node.js matrix readfile

我有一个包含以下数据的文本文件:

[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/

相关文章:

javascript - Camelize函数输出未显示,没有抛出错误

java - For 循环接受额外的数组成员

node.js - Mongoose .pre ('save' ) 未触发 - bcrypt

mysql - 使用 MongoDb 的数据库结构

javascript - 如何检查失败的定期订阅 Stripe

javascript - 使用 Javascript/Jquery 显示计时器

javascript - 从命令行像字典一样解析 JSON

javascript - 用于禁用选择的单选按钮( 'else' 不起作用)

python - 为什么使用 numpy.save 从数组中保存切片会根据切片的方向变慢?

java - 数的前 n 个因数