Thanks in advance

7行文本数据,每行用"|"字符进一步分隔. 数据被粘贴到TextArea html元素中. 提供给函数的数据:

  • 将文本拆分成一组行.
  • 取每一行并按竖线字符拆分.
  • 加载到内部数组
  • 取外部数组中的下一项,然后重复.

除了内部循环比7多运行一次之外,以下所有操作都有效. 这会在命中时导致未定义的错误

row = allTextLines[i].split('|');

我已经从记事本上粘贴了数据. 我已经将类似的数据直接输入到文本区域.

有什么 idea 吗?

<textarea id="myTextAreaBox" name="myTextAreaBox"></textarea> <input type="button" value="Get Text" onclick="getText()" />

function getText() {
// Get text
var csv = document.getElementById("myTextAreaBox").value;

// Split by line end
let allTextLines = csv.split(/\r\n|\n|\r/);

// Outer loop
for (let i = 0; allTextLines.length; i++){
let row =[];
row = allTextLines[i].split('|');
let col = [];

// Inner Loop
for (let j = 0; j < row.length; j++){
col.push(row[j]);
  }

 }

}`

Data:

BHP.AX|20/07/2022|BUY|250|$9,324.87
BHP.AX|23/08/2022|BUY|230|$9,675.35
BHP.AX|01/09/2022|SELL|280|$10,520.22
BHP.AX|26/09/2022|SELL|100|$5,617.05
BHP.AX|23/06/2023|SELL|100|$5,445.55
BLD.AX|29/10/2018|BUY|100|$5,074.00
BLD.AX|08/11/2019|SELL|100|$6,049.00

try 优雅地结束2D数组中的数据加载.虽然所有数据都已正确加载,但函数在try 再次迭代时会以错误结束.

发现这一点,但不能立即看到哪里可以协助:Splitting text file into 2D array

推荐答案

你在for (let i = 0; allTextLines.length; i++){中有一个错误,因此循环将永远循环.你应该把它调到for (let i = 0; i < allTextLines.length; i++){.

您可以使用数组方法在一行中完成您的任务:

const str = `BHP.AX|20/07/2022|BUY|250|$9,324.87
BHP.AX|23/08/2022|BUY|230|$9,675.35
BHP.AX|01/09/2022|SELL|280|$10,520.22
BHP.AX|26/09/2022|SELL|100|$5,617.05
BHP.AX|23/06/2023|SELL|100|$5,445.55
BLD.AX|29/10/2018|BUY|100|$5,074.00
BLD.AX|08/11/2019|SELL|100|$6,049.00`;

const data = str.split(/\n/).map(row => row.split('|'));

console.log(JSON.stringify(data));

Javascript相关问答推荐

可以将SuperTest导入为ES 6模块吗?

错误:找不到react-redux上下文值;请确保该组件包装在React原生Expo应用程序中的提供者中

带对角线分隔符的图像滑动器

我的YouTube视频没有以html形式显示,以获取免费加密信号

Angular material 表多个标题行映射

调用SEARCH函数后,程序不会结束

脚本.js:3:20未捕获的类型错误:无法读取空的属性(读取addEventHandler)

使用typeof运算符获取对象值类型-接收字符串而不是数组

Next.js Next/Image图像隐含性有任何类型-如何修复?

if/else JavaScript中的条件行为

Exceljs:我们在file.xlsx(...)&#中发现了一个问题'"" 39人;

MathJax可以导入本地HTML文档使用的JS文件吗?

更改JSON中使用AJAX返回的图像的路径

将核心模块导入另一个组件模块时存在多个主题

在使用位板时,如何在Java脚本中判断Connect 4板中中柱的对称性?

如何使用JS创建一个明暗功能按钮?

在不删除代码的情况下禁用Java弹出功能WordPress

当从其他文件创建类实例时,为什么工作线程不工作?

对具有相似属性的对象数组进行分组,并使用串连的值获得结果

每隔3个项目交替显示,然后每1个项目交替显示