gpt4 book ai didi

javascript - 使用 "arguments"为多个参数调用 JS 函数

转载 作者:行者123 更新时间:2023-11-30 12:21:14 24 4
gpt4 key购买 nike

这是我在这里问的第一个问题,请原谅我对我所问主题的不了解和我糟糕的英语:)

这是我的问题:我需要调用以下 JS 函数(随附的代码按原样工作,当传递给它命名和编号的参数时)但我不知道“先验”它可以接收多少参数来自调用代码。

我搜索并了解到在这种情况下,可以使用“参数”,它应该充当非指定数量参数的“容器”。

不幸的是,我对 JS 知之甚少,尤其是它的语法和语义,我快要疯了(到现在为止,对我来说太苛刻了)。

有没有人愿意帮助我阐明如何正确编写此代码段的发送和接收 JS 语句?

或者,至少,给我一些我可以轻松理解并自己处理的示例代码?

提前谢谢大家,非常感谢任何帮助! :)

这是我正在谈论的代码:

<script>


Number.prototype.padDigit = function() { return (this < 10) ? '0'+this : this; }
//function timeSummation(id1, id2, id3, id4, id5) {

function timeSumLUN(arguments) {
var t1 = document.getElementById(OLUN_1).value.split(':');
var t2 = document.getElementById(OLUN_2).value.split(':');
var t3 = document.getElementById(OLUN_3).value.split(':');
var t4 = document.getElementById(OLUN_4).value.split(':');
var t5 = document.getElementById(OLUN_5).value.split(':');



var mins = Number(t1[1])+Number(t2[1])+Number(t3[1])+Number(t4[1])+Number(t5[1]);
var hrs = Math.floor(parseInt(mins / 60));
hrs = Number(t1[0])+Number(t2[0])+Number(t3[0])+Number(t4[0])+Number(t5[0])+hrs;
mins = mins % 60;
return hrs.padDigit()+':'+mins.padDigit();

}

</script>
echo "<td nowrap><input type='text' class='table_font'  size='5' maxlength='5' value='".$_ore_lavorate_LUN."' name='OLUN[]' id='OLUN_".$placeholder_id_cella."' 
onchange='document.getElementById('somma_LUN').value = timeSumLUN(".$_placeholder_timeSumLUN_finale.")'></td>

最佳答案

执行函数时,arguments 对象在函数体中被特殊对待。无论函数声明的形式参数如何,例如function(param1, param2) {}arguments 对象始终可用,并且始终反射(reflect)在运行时 传递给函数的参数。您不得将其指定为形式参数(即 function(arguments) {}),只需在函数主体中引用它即可:

function() {
arguments.length; // the number of args received at runtime.
}

arguments 对象可以作为一个数组使用,它可以迭代访问所有传递的参数,但它实际上不是一个数组,而是一个特殊处理的对象。

https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/arguments

关于javascript - 使用 "arguments"为多个参数调用 JS 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30984194/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com