我正在尝试计算用户输入到具有动态添加输入的表单中的一组数据的标准偏差。到目前为止,我已经能够计算数组中元素的总和,但我不知道如何计算数组中每个元素的平方。我搜索过这个论坛,但尝试从唯一适用的结果( Square each number in an array in javascript )中提出建议似乎不起作用。这是我的代码片段:
$(".calcSD").click(function() {
$("input[type=text]").each(function() {
arr.push($(this).val().trim() || 0);
sum += parseInt($(this).val().trim() || 0);
});
其中.calcSD
是用户单击执行计算的按钮。此外,数组的长度由 var number = arr.sort().filter(Boolean).length;
给出,因为脚本旨在过滤掉任何留空的输入。
此外,如果有影响,输入会通过以下方式动态添加到数组中:
$('.multi-field-wrapper').each(function() {
var $wrapper = $('.multi-fields', this);
$(".add-field", $(this)).unbind('click').click(function(e) {
$('.multi-field:first-child', $wrapper).clone(true).appendTo($wrapper).find('input').val('').focus();
});
所以我问:如何确定结果数组中每个元素的平方?
最佳答案
如果返回The
pow()
method returns the value of x to the power of y (x^y)
falsey
值,parseInt
中的 ||
将使用基数作为 0
$(".calcSD").click(function() {
var sum = 0;
var arr=[];
$("input[type=text]").each(function() {
var squared = Math.pow(parseInt(this.value)||0, 2);
arr.push(squared);
sum += squared;
});
alert(sum);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<input type="text">
<input type="text">
<button class="calcSD">Calculate</button>
关于javascript - 使用动态添加的输入对数组中的每个数字进行平方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34822795/