解析textarea并通过JavaScript

时间:2018-05-14 02:59:33

标签: javascript html

我一直在搜索,并且没有找到任何方法在JavaScript中执行此操作,或者是否有更好的方法。

我的表单有一个文本区域字段,输入特定的字符串,如:

1/5/8     18      31.2                0     1847550953       13013135          5598945               3.00e-01
1/5/9     18      34.2                0     1748942583       6401826          5598945               3.00e-01
1/5/10     18      34.6                0     1847550953       13013135          5598945               3.00e-01
1/5/11     18      34.4                0     1847550953       13013135          5598945               3.00e-01

数据采用此格式,但数字可能不同。我想要做的是有一个脚本来抓住第3列中的内容,所以在这个例子中31.2,34.2,34.6和34.4然后取这些数字,通过将它们相加并除以4得到它们的平均值然后在不同的textarea框中显示结果。

我也想知道它是否可以在一个脚本中完成,还是需要两个脚本。一个解析然后另一个计算并显示textarea中的平均值。

1 个答案:

答案 0 :(得分:2)

split行和map匹配第三列。然后你可以找到平均值并将结果放在另一个textarea中:



const input = `1/5/8     18      31.2                0     1847550953       13013135          5598945               3.00e-01
1/5/9     18      34.2                0     1748942583       6401826          5598945               3.00e-01
1/5/10     18      34.6                0     1847550953       13013135          5598945               3.00e-01
1/5/11     18      34.4                0     1847550953       13013135          5598945               3.00e-01`;
const thirdRowMatches = input.split('\n')
  .map(line => line.split(/ +/)[2])
const avg = thirdRowMatches.reduce((a, str) => a + Number(str), 0) / thirdRowMatches.length;
document.querySelector('#textarea2').value = avg;

<textarea id="textarea2"></textarea>
&#13;
&#13;
&#13;