我一直在搜索,并且没有找到任何方法在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中的平均值。
答案 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;