gpt4 book ai didi

javascript - 在 Javascript 中将字符串转换为二维数组的有效方法

转载 作者:行者123 更新时间:2023-11-30 16:49:00 26 4
gpt4 key购买 nike

我需要根据字符串检查给定水果在给定日期的数量是否正确。我正在将字符串转换为二维数组并遍历列。此代码有效,但我想知道:是否有更好的方法来做到这一点?我觉得这可以避免 4 个 for 循环。

function verifyFruit(name, date, currentValue) {...}
var data = "Date,Apple,Pear\n2015/04/05,2,3\n2015/04/06,8,6"
var rows = data.split('\n');
var colCount = rows[0].split(',').length;
var arr = [];
for (var i = 0; i < rows.length; i++) {
for (var j = 0; j < colCount; j++) {
var temp = rows[i].split(',');
if (!arr[i]) arr[i] = []
arr[i][j] = temp[j];
}
}
for (var i = 1; i < colCount; i++) {
for (var j = 1; j < rows.length; j++) {
verifyFruit(arr[0][i], arr[j][0], arr[j][i]);
}
}

最佳答案

这很适合 Array.prototype.map

var data = "Date,Apple,Pear\n2015/04/05,2,3\n2015/04/06,8,6"
var parsedData = data.split("\n").map(function(row){return row.split(",");})

map 的作用是遍历数组并对每个元素应用投影函数,返回一个新数组 作为结果。

你可以像这样想象正在发生的事情:

function projection(csv){ return csv.split(",");}
var mappedArray = [projection("Date,Apple,Pear"),projection("2015/04/05,2,3"),projection("2015/04/06,8,6")];

关于javascript - 在 Javascript 中将字符串转换为二维数组的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30807037/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com