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插件源码
Jun 24 Javascript
JavaScript模块随意拖动示例代码
May 27 Javascript
javascript中字符串拼接详解
Sep 26 Javascript
js获取域名的方法
Jan 27 Javascript
js省市联动效果完整实例代码
Dec 09 Javascript
javascript点击按钮实现隐藏显示切换效果
Feb 03 Javascript
Webpack 实现 AngularJS 的延迟加载
Mar 02 Javascript
第二篇Bootstrap起步
Jun 21 Javascript
超实用的javascript时间处理总结
Aug 16 Javascript
ionic组件ion-tabs选项卡切换效果实例
Aug 27 Javascript
Node.js + Redis Sorted Set实现任务队列
Sep 19 Javascript
JavaScript页面倒计时功能完整示例
May 15 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 mysql数据库操作分页类
2008/06/04 PHP
PHP读取文件并可支持远程文件的代码分享
2012/10/03 PHP
PHP递归调用数组值并用其执行指定函数的方法
2015/04/01 PHP
Laravel多域名下字段验证的方法
2019/04/04 PHP
Javascript JSQL,SQL无处不在,
2010/05/05 Javascript
jQuery的实现原理的模拟代码 -3 事件处理
2010/08/03 Javascript
一个页面放2段图片滚动代码出现冲突的问题如何解决
2012/12/21 Javascript
基于jQuery实现图片的前进与后退功能
2013/04/24 Javascript
JavaScript模块规范之AMD规范和CMD规范
2015/10/27 Javascript
connection reset by peer问题总结及解决方案
2016/10/21 Javascript
arcgis for js 修改infowindow样式的方法
2016/11/02 Javascript
微信小程序实现皮肤功能(夜间模式)
2017/06/18 Javascript
JavaScript异步上传图片文件的实例代码
2017/07/04 Javascript
JS路由跳转的简单实现代码
2017/09/21 Javascript
vue-router 权限控制的示例代码
2017/09/21 Javascript
微信小程序返回多级页面的实现方法
2017/10/27 Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
2019/03/28 jQuery
简单了解vue.js数组的常用操作
2019/06/17 Javascript
Vue.js实现备忘录功能
2019/06/26 Javascript
Vue 子组件与数据传递问题及注意事项
2019/07/11 Javascript
使用vuex存储用户信息到localStorage的实例
2019/11/11 Javascript
JQuery省市联动效果实现过程详解
2020/05/08 jQuery
Python Tkinter GUI编程入门介绍
2015/03/10 Python
用Python进行行为驱动开发的入门教程
2015/04/23 Python
python中尾递归用法实例详解
2015/04/28 Python
Python使用smtp和pop简单收发邮件完整实例
2018/01/09 Python
python使用PIL给图片添加文字生成海报示例
2018/08/17 Python
Python使用get_text()方法从大段html中提取文本的实例
2019/08/27 Python
keras读取训练好的模型参数并把参数赋值给其它模型详解
2020/06/15 Python
移动web模拟客户端实现多方框输入密码效果【附代码】
2016/03/25 HTML / CSS
伦敦剧院门票:London Theatre Direct
2018/11/21 全球购物
Linux操作面试题
2015/02/11 面试题
幼儿园课题方案
2014/06/09 职场文书
2014年作风建设剖析材料
2014/10/23 职场文书
2014年大学宣传部工作总结
2014/12/19 职场文书
教师继续教育反思周记
2015/06/25 职场文书