首先,我是一名.Net开发人员,我对JavaScript并不了解。

我已经给出了使用JavaScript构建一个可以100%脱机工作的系统的信息。我有一个像CSV文件一样的大数据集。

+------+---------+----+----+----+----+-------+----------+
| Year | Subject | A  | B  | C  | F  | Total | PassRate |
+------+---------+----+----+----+----+-------+----------+
| 2015 | Maths   | 12 | 20 | 10 |  5 |    47 |       80 |
| 2015 | Sinhala | 18 | 14 |  5 | 10 |    47 |       75 |
| 2016 | Maths   | 25 | 15 |  4 |  8 |    52 |       25 |
| 2016 | Sinhala | 20 | 12 |  2 | 18 |    52 |       60 |
+------+---------+----+----+----+----+-------+----------+


这只是一个示例,大约有50行。

我尝试读取CSV并尝试了json,xml文件,但是由于跨源策略,我没有成功

所以我想将所有这些数据保存在多维数组或类似的东西中。我读了How can I create a two dimensional array in JavaScript?,但没有运气。

那么,如何将所有这些数据保存到JavaScript变量中?

请注意,我必须根据上表进行大量计算(例如:每年的总及格率),因此我需要轻松获取任何值。

那么如何将所有这些数据保存到数组或类似数据中呢?

注意:我不是在问如何将CSV转换为JavaScript变量,我只是在问如何将这些类型的大量数据保存为JS变量数组或类似变量,从而可以轻松地进行计算。

最佳答案

您可以将其指定为数组内的数组,如下所示:



var firstArray = [];
firstArray.push(['Year', 'Subject', 'A', 'B', 'C', 'F', 'Total', 'PassRate']); // headers
firstArray.push([2015, 'Maths', 12, 20, 10, 5, 47, 80]); // 1st row
firstArray.push([2015, 'Sinhala', 18, 14, 5, 10, 47, 75]) // 2nd row
console.log(firstArray);





或作为数组内的对象,如下所示:



var secondArray = [];
secondArray.push({
  'Year': 2015,
  'Subject': 'Maths',
  'A': 12,
  'B': 20,
  'C': 10,
  'F': 5,
  'Total': 47,
  'PassRate': 80
}); // 1st row
secondArray.push({
  'Year': 2015,
  'Subject': 'Sinhala',
  'A': 18,
  'B': 14,
  'C': 5,
  'F': 10,
  'Total': 47,
  'PassRate': 75
}); // 2nd row
console.log(secondArray)

07-24 18:44
查看更多