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

标签 javascript arguments

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

这是我的问题:我需要调用以下 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/

相关文章:

go - 需要带有 go-flags 的位置参数

c - 在 C 程序中传递数组作为参数并打印数组项

javascript - d3.js - 更新 GeoJSON 元素

javascript - jQuery $.get 失败

javascript - 试图获取地理位置, "Uncaught TypeError: Cannot set property ' 值为空”?

arguments - 如何将多个参数传递给 APL 函数

javascript - 如何使用图像源数组更改 JavaScript 中的图像

javascript - 一旦值达到一定长度,自动触发文本字段

php - C++ 是否可以将带有换行符的文本传递给 C++ 程序?

ruby-on-rails - rails : after_add giving error wrong number of arguments (1 for 0)