首页 > 解决方案 > 转换数组以保存在mysql nodejs中

问题描述

我有一个读取文件脚本,数据例如

凯文,史密斯,321,street34

女士, 塞维利亚, 4564, blv 34

卡尔,最大,1212,圣 34#3

newDataArray = []

const data = fs.readFileSync('/Users/myuser/Documents/test.txt', 'utf8')

//here I delete  \n
let response = data.split(/\r?\n/g)


    //the array is now lenght 3

    response.forEach(element => {
        newDataArray.push(element)   
    });

但我最后需要以下

    {
      name: 'kevin',
      lastname: 'smith',
      phone: '321',
      add: 'street34' 
    },
    {
      name: 'lady',
      lastname: 'sevilla',
      phone: '4564',
      add: 'blv 34' 
    },
    {
      name: 'carl',
      lastname: 'max',
      phone: '1212',
      add: 'st 34#3' 
    }

之后可能会保存在mysql中

//i dont know how to replace req.body

const { name, lastname, phone, add } = req.body;
    connection.query('INSERT INTO test_table SET ? ',
      {
        name,
        lastname,
        phone,
        add
      }
    , (err, result) => {
      res.redirect('/');
});

标签: javascript

解决方案


就如此容易:

let response = data.split(/\r?\n/g)
    .map( row => {
        row = row.split(', ');
        return {
            name: row[0],
            lastname: row[1],
            phone: row[2],
            add: row[3],
        }
    })

推荐阅读