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 相关文章推荐
Extjs学习笔记之三 extjs form更多的表单项
Jan 07 Javascript
Javascript学习笔记5 类和对象
Jan 11 Javascript
JQuery扩展插件Validate 3通过参数设置错误信息
Sep 05 Javascript
js用正则表达式来验证表单(比较齐全的资源)
Nov 17 Javascript
addEventListener 的用法示例介绍
May 07 Javascript
AngularJS中watch监听用法分析
Nov 04 Javascript
jQuery扩展_动力节点Java学院整理
Jul 05 jQuery
利用require.js与angular搭建spa应用的方法实例
Jul 19 Javascript
响应式框架Bootstrap栅格系统的实例
Dec 19 Javascript
TypeScript中的方法重载详解
Apr 12 Javascript
如何使用JavaScript实现栈与队列
Jun 24 Javascript
React中获取数据的3种方法及优缺点
Feb 18 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留言本源码
2009/11/11 PHP
PHP 图像尺寸调整代码
2010/05/26 PHP
PHP 中TP5 Request 请求对象的实例详解
2017/07/31 PHP
PHP实现APP微信支付的实例讲解
2018/02/10 PHP
ASP SQL防注入的方法
2008/12/25 Javascript
ToolTips JQEURY插件之简洁小提示框效果
2011/11/19 Javascript
js字符串转成JSON
2013/11/07 Javascript
js实现无限级树形导航列表效果代码
2015/09/23 Javascript
超赞的jQuery图片滑块动画特效代码汇总
2016/01/25 Javascript
javascript实现可键盘控制的抽奖系统
2016/03/10 Javascript
JS使用单链表统计英语单词出现次数
2016/06/16 Javascript
JS实现根据文件字节数返回文件大小的方法
2016/08/02 Javascript
深入理解AngularJS中的ng-bind-html指令和$sce服务
2016/09/08 Javascript
jQuery实现隔行变色的方法分析(对比原生JS)
2016/11/18 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
vue-router实现组件间的跳转(参数传递)
2017/11/07 Javascript
vue3.0中的双向数据绑定方法及优缺点
2019/08/01 Javascript
Vue.js获取手机系统型号、版本、浏览器类型的示例代码
2020/05/10 Javascript
微信小程序入门之绘制时钟
2020/10/22 Javascript
Python2.x中文乱码问题解决方法
2015/06/02 Python
Python fileinput模块使用实例
2015/06/03 Python
pycharm 将python文件打包为exe格式的方法
2019/01/16 Python
如何使用Python进行OCR识别图片中的文字
2019/04/01 Python
python opencv根据颜色进行目标检测的方法示例
2020/01/15 Python
Python3 字典dictionary入门基础附实例
2020/02/10 Python
vscode配置anaconda3的方法步骤
2020/08/08 Python
pandas参数设置的实用小技巧
2020/08/23 Python
请假条格式范文
2014/04/10 职场文书
团结就是力量演讲稿
2014/05/21 职场文书
工地安全生产标语
2014/06/06 职场文书
开服装店计划书
2014/08/15 职场文书
小学生十佳少年事迹材料
2014/08/20 职场文书
财务工作疏忽检讨书
2014/09/11 职场文书
中国在我心中演讲稿
2014/09/13 职场文书
CSS3实现模糊背景的三种效果示例
2021/03/30 HTML / CSS
Java中的随机数Random
2022/03/17 Java/Android