Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
每次在JavaScript中调用函数时,分别保存函数的结果_Javascript_Function - Fatal编程技术网

每次在JavaScript中调用函数时,分别保存函数的结果

每次在JavaScript中调用函数时,分别保存函数的结果,javascript,function,Javascript,Function,我是JavaScript的初学者,所以可能有一种简单的方法来做我想做的事情,但我不知道 我有一个函数,它从几个滑块获取输入,对它们进行一些计算,并将结果输出到一个变量中。函数返回此变量的值,如下所示: fun() { slider1=parseFloat($('#field1').val()); //some calculations here slider2=parseFloat($('#field1').val()); //some calculations here to

我是JavaScript的初学者,所以可能有一种简单的方法来做我想做的事情,但我不知道

我有一个函数,它从几个滑块获取输入,对它们进行一些计算,并将结果输出到一个变量中。函数返回此变量的值,如下所示:

fun() {
slider1=parseFloat($('#field1').val());
    //some calculations here
slider2=parseFloat($('#field1').val());
    //some calculations here

totalsum=(slider1+slider2);
    return totalsum;
}
单击按钮即可绑定该函数。我想做的是每次按下按钮时将函数结果保存在不同的变量中。因此,如果移动滑块并按下按钮,结果将存储在totalsum中,然后可以更改滑块并再次按下按钮,结果将保存在totalsum2中,依此类推

我希望这是有道理的,如果没有,请告诉我,我会再解释一遍。

window.sums=[] input.onclick==>{ 常量滑块1=+$'field1'.val; //这里有一些计算 常量滑块2=+$'field1'.val; //这里有一些计算 常量总和=滑块1+滑块2; window.sums.pushtotalsum 返回总和;
} 而不是创建不同的变量。创建一个数组并使用push


与其把结果存储在新的变量中,不如把它推到ARARY.Fiel1两次?亚历克斯,假设你知道JavaScript在一元+AS值前缀和PARSEFLUT之间的区别,请解释为什么你认为应该使用+?他从jQuery滑块中得到值,我认为使用标准的ValueMaHeER在这里使用UnA+ +是正常的。为什么使用let slider1和let totalsums=[];而不是康斯特?@Roko C.Buljan很好的建议。康斯特比汉克斯好。这很简单。我将在这里提出一个后续问题,而不是打开一个新的线程。有什么我可以添加到函数中的东西可以改变按钮的行为,在数组达到20个元素后隐藏它吗?也就是说,我不希望人们能按它超过20次。使用这行iftotalsums.length==20$“button”。hide。@Roko C.Buljan你是否对答案投了反对票。如果是,请解释原因?
const totalsums = [];
function fun() {
    let slider1=parseFloat($('#field1').val());
    //some calculations here
    let slider2=parseFloat($('#field1').val());
    //some calculations here

    let totalsum=(slider1+slider2);
    totalsums.push(totalsum)
}