首页 > 解决方案 > 转换成 JSON 数组

问题描述

这是我的文本文件:

2|BATH BENCH|19.00
20312100000|ORANGE BELL|1.42
04525514840|BOILER ONION|1.78
20422500000|AVOCADO|0.98

我的工作是提取条形码,即 2,20312100000、04525514840、2042250000,并转换为 json 数组,如下所示:[\"2\",\"20312100000\",\"04525514840\",\"20422500000\"]

我的代码是这样的:

var FilePath = process.argv[2];
var allUpcs = [];

const fs = require('fs');
const readline = require('readline');

const file = readline.createInterface({
input: fs.createReadStream(FilePath),
output: process.stdout,
terminal: false
});

file.on('line', (line) => {
allUpcs.push(line.split('|')[0]);
});

file.on('close', function() {
// console.log(allUpcs.map(Number));
// console.log(JSON.stringify(allUpcs));
console.log(JSON.stringify(allUpcs));
});

我得到这样的输出:

[“2”,“20312100000",“04525514840”,“20422500000"]

我需要把它转换成json数组,谁能帮忙谢谢。

标签: javascript

解决方案


你只需要做两次JSON.stringify,就可以得到你想要的格式。

祝你有美好的一天:)

const data =["2","20312100000","04525514840","20422500000"];
console.log('object',data);
console.log('string',JSON.stringify(data));
console.log('string',JSON.stringify(JSON.stringify(data)));


推荐阅读