首页 > 解决方案 > Nodejs数组函数不适用于大型数组

问题描述

有一个包含超过两百万条记录的数组,我想从中构建一个新数组,但该函数不起作用。即使等了二十分钟,也没有任何反应。分配变量结果时代码冻结。可能是什么问题?

const arr1 = fs.readFileSync('./csv1.csv', 'utf-8')
    .toString()
    .split('\n')
    .map(row => row.split(';'))

const arr2 = iconv.encode(
    iconv.decode(fs.readFileSync('./csv2.csv'), "win1251"), "utf8")
    .toString()
    .split('\n')
    .map(row => row.split(';'))

const concatArrays = arr1.concat(arr2);

const uniqNumber = _.uniq(concatArrays.map(el => parseInt(el[0])))

const result = uniqNumber.map(el => {
    return [parseInt(el), concatArrays.filter(([number]) => el === parseInt(number))]
});

标签: node.js

解决方案


推荐阅读