在 JavaScript 中将 CSV 加载到数组
CSV 是一个文本文件。它使用逗号作为分隔符来分隔不同的值。
在本文中,我们将使用 JavaScript 将 CSV 文件加载到数组中。
jQuery 库提供了 jquery-csv
插件,可以将 CSV 文件读入数组。
例如,
array = $.csv.toArrays(csv, {
delimiter: "'",
separator: ';', // Sets a custom field separator character
});
我们可以使用 delimiter
和 separator
属性设置自定义分隔符和分隔符。最终结果存储在一个数组中。
我们将使用 FileReader
类将所需的 CSV 文件作为字符串读取。要将其存储到数组中,我们将使用 slice()
、split()
和 map()
函数。slice()
函数有助于返回一个新数组,其中包含实现它的旧数组的一部分。map()
函数通过提供为数组中的每个元素提供的函数来帮助返回一个新数组。split()
函数使用指定的分隔符帮助将字符串拆分为数组形式的子字符串。
请参考下面的代码。
function csv_To_Array(str, delimiter = ",") {
const header_cols = str.slice(0, str.indexOf("\n")).split(delimiter);
const row_data = str.slice(str.indexOf("\n") + 1).split("\n");
const arr = row_data.map(function (row) {
const values = row.split(delimiter);
const el = header_cols.reduce(function (object, header, index) {
object[header] = values[index];
return object;
}, {});
return el;
});
// return the array
return arr;
}
我们假设文件的第一行包含标题。slice()
函数从开头开始到第一个 \n
索引,并使用 split()
函数根据分隔符将字符串拆分为数组。同样,我们使用这两个函数来存储行。接下来,我们将行映射到数组。我们使用 map()
函数将行的每个值拆分为一个数组。reduce()
函数与标题一起使用以创建一个对象,将行的值与必要的标题一起添加,并返回此对象。这个对象被添加到数组中。最后,我们返回最终的数组,它是一个对象数组。
相关文章
在 Angular 中上传文件
发布时间:2023/04/14 浏览次数:71 分类:Angular
-
本教程演示了如何在 Angular 中上传任何文件。我们还将介绍如何在文件上传时显示进度条,并在上传完成时显示文件上传完成消息。
Angular 中所有 Mat 图标的列表
发布时间:2023/04/14 浏览次数:91 分类:Angular
-
本教程演示了在哪里可以找到 Angular 中所有 Mat 图标的列表以及如何使用它们。
Angular 2 中的复选框双向数据绑定
发布时间:2023/04/14 浏览次数:139 分类:Angular
-
本教程演示了如何一键标记两个复选框。这篇有 Angular 的文章将着眼于执行复选框双向数据绑定的不同方法。
在 AngularJS 中重新加载页面
发布时间:2023/04/14 浏览次数:142 分类:Angular
-
我们可以借助 windows.location.reload 和 reload 方法在 AngularJS 中重新加载页面。
在 AngularJs 中设置 Select From Typescript 的默认选项值
发布时间:2023/04/14 浏览次数:78 分类:Angular
-
本教程提供了在 AngularJs 中从 TypeScript 中设置 HTML 标记选择的默认选项的解释性解决方案。
在 AngularJS 中启用 HTML5 模式
发布时间:2023/04/14 浏览次数:150 分类:Angular
-
本文讨论如何在 AngularJS 应用程序上启用带有深度链接的 HTML5 模式。
在 AngularJs 中加载 spinner
发布时间:2023/04/14 浏览次数:107 分类:Angular
-
我们将介绍如何在请求加载时添加加载 spinner,并在 AngularJs 中加载数据时停止加载器。
在 Angular 中显示和隐藏
发布时间:2023/04/14 浏览次数:78 分类:Angular
-
本教程演示了 Angular 中的显示和隐藏。在开发商业应用程序时,我们需要根据用户角色或条件隐藏一些数据。我们必须根据该应用程序中的条件显示相同的数据。
在 Angular 中下载文件
发布时间:2023/04/14 浏览次数:104 分类:Angular
-
本教程演示了如何在 angular 中下载文件。我们将介绍如何通过单击按钮在 Angular 中下载文件并显示一个示例。