JS函数动态传递参数的方法分析【基于arguments对象】


Posted in Javascript onJune 05, 2019

本文实例讲述了JS函数动态传递参数的方法。分享给大家供大家参考,具体如下:

js函数体内可以通过arguments对象来接收传递进来的参数,利用这一对象属性可以动态传参。

function box() {
 return arguments[0]+' | '+arguments[1]; //得到每次参数的值
}
alert(box(1,2,3,4,5,6)); //传递参数

arguments对象的length属性可以得到参数的数量。

function box() {
 return arguments.length; //得到6
}
alert(box(1,2,3,4,5,6));

我们可以利用length这个属性,来智能的判断有多少参数,然后把参数进行合理的应用。比如,要实现一个加法运算,将所有传进来的数字累加,而数字的个数又不确定。

function box() {
 var sum = 0;
 if (arguments.length == 0) return sum; //如果没有参数,退出
 for(var i = 0;i < arguments.length; i++) { //如果有,就累加
  sum = sum + arguments[i];
 }
 return sum; //返回累加结果
}
alert(box(5,9,12));

例子:

function loading() {
  var a="";
  for (var index in arguments) {
   a+=arguments[index]+"\n";
  }
  alert(a);
}
loading("xxx","yyyy","ccc");

完整Demo示例:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>3water.com arguments动态获取传参个数</title>
</head>
<body>
<script>
 function box(){
  sum=0;
  for(i=0;i<arguments.length;i++){
   sum+=arguments[i];
  }
  return sum;
 }
 console.log(box(1,3,3,5,6))
</script>
</body>
</html>

运行结果:

JS函数动态传递参数的方法分析【基于arguments对象】

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript常用函数技巧汇总》、《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
初窥JQuery-Jquery简介 入门了解篇
Nov 25 Javascript
70+漂亮且极具亲和力的导航菜单设计国外网站推荐
Sep 20 Javascript
javascript学习基础笔记之DOM对象操作
Nov 03 Javascript
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
Jun 22 Javascript
javascript实现的一个随机点名功能
Aug 26 Javascript
Javascript获取表单名称(name)的方法
Apr 02 Javascript
Bootstrap如何创建表单
Oct 21 Javascript
javascript判断回文数详解及实现代码
Feb 03 Javascript
Textarea输入字数限制实例(兼容iOS&amp;安卓)
Jul 06 Javascript
详解Angular2学习笔记之Html属性绑定
Jan 03 Javascript
node前端开发模板引擎Jade的入门
May 11 Javascript
JavaScript中变量、指针和引用功能与操作示例
Aug 04 Javascript
jQuery操作cookie的示例代码
Jun 05 #jQuery
JS实现从对象获取对象中单个键值的方法示例
Jun 05 #Javascript
微信小程序如何实现全局重新加载
Jun 05 #Javascript
JS数组Object.keys()方法的使用示例
Jun 05 #Javascript
express + jwt + postMan验证实现持久化登录
Jun 05 #Javascript
Vue实现微信支付功能遇到的坑
Jun 05 #Javascript
JS实现数组删除指定元素功能示例
Jun 05 #Javascript
You might like
使PHP自定义函数返回多个值
2006/11/26 PHP
PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
2012/03/07 PHP
解决PHP超大文件下载,断点续传下载的方法详解
2013/06/06 PHP
php编写的简单页面跳转功能实现代码
2013/11/27 PHP
排序算法之PHP版快速排序、冒泡排序
2014/04/09 PHP
php构造方法中析构方法在继承中的表现
2016/04/12 PHP
Node调试工具JSHint的安装及配置教程
2014/05/27 Javascript
jQuery实现3D文字特效的方法
2015/03/10 Javascript
jQuery往textarea中光标所在位置插入文本的方法
2015/06/26 Javascript
javascript解析ajax返回的xml和json格式数据实例详解
2017/01/05 Javascript
AngularJS之页面跳转Route实例代码
2017/03/10 Javascript
js实现抽奖效果
2017/03/27 Javascript
js HTML5 canvas绘制图片的方法
2017/09/08 Javascript
VUE中使用HTTP库Axios方法详解
2020/02/05 Javascript
微信h5静默和非静默授权获取用户openId的方法和步骤
2020/06/08 Javascript
[45:46]2014 DOTA2国际邀请赛中国区预选赛5.21 HGT VS DT
2014/05/23 DOTA
python用于url解码和中文解析的小脚本(python url decoder)
2013/08/11 Python
python实现中文分词FMM算法实例
2015/07/10 Python
python使用pycharm环境调用opencv库
2018/02/11 Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
2019/07/19 Python
解决torch.autograd.backward中的参数问题
2020/01/07 Python
使用python把xmind转换成excel测试用例的实现代码
2020/10/12 Python
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
Mansur Gavriel官网:纽约市的一个设计品牌
2019/05/02 全球购物
广州御银科技股份有限公司试卷(C++)
2016/11/04 面试题
销售演讲稿范文
2014/01/08 职场文书
淘宝店铺营销方案
2014/02/13 职场文书
《会走路的树》教后反思
2014/04/19 职场文书
乡镇八一建军节活动方案
2014/08/24 职场文书
单位在职证明书
2014/09/11 职场文书
党员对十八届四中全会的期盼思想汇报范文
2014/10/17 职场文书
停电放假通知
2015/04/14 职场文书
投资合作意向书范本
2015/05/08 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
python生成可执行exe控制Microsip自动填写号码并拨打功能
2021/06/21 Python
python内置模块之上下文管理contextlib
2022/06/14 Python