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中 常用的选择器介绍
Apr 16 Javascript
PHP+jQuery实现随意拖动层并即时保存拖动位置
Apr 30 Javascript
微信QQ的二维码登录原理js代码解析
Jun 23 Javascript
JavaScript鼠标特效大全
Sep 13 Javascript
jQuery length 和 size()区别总结
Apr 26 jQuery
更优雅的微信小程序骨架屏实现详解
Aug 07 Javascript
vue登录以及权限验证相关的实现
Oct 25 Javascript
js实现数字滚动特效
Dec 16 Javascript
简单了解vue 插值表达式Mustache
Jul 22 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
Aug 10 Javascript
vue axios请求成功却进入catch的原因分析
Sep 08 Javascript
如何开发一个渐进式Web应用程序PWA
May 10 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自动获取关键字的方法
2015/01/06 PHP
PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
2016/12/24 PHP
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
2010/03/14 Javascript
jquery select 设置默认选中的示例代码
2014/02/07 Javascript
基于socket.io和node.js搭建即时通信系统
2014/07/30 Javascript
jQuery实现表格行上移下移和置顶的方法
2015/05/22 Javascript
详解js跨域原理以及2种解决方案
2015/12/09 Javascript
js仿百度切换皮肤功能(html+css)
2016/07/10 Javascript
总结Javascript中的隐式类型转换
2016/08/24 Javascript
jQuery元素属性操作实例(设置、获取及删除元素属性)
2016/09/08 Javascript
AngularJS中$injector、$rootScope和$scope的概念和关联关系深入分析
2017/01/19 Javascript
JavaScript中从setTimeout与setInterval到AJAX异步
2017/02/13 Javascript
浅谈angular2的http请求返回结果的subcribe注意事项
2017/03/01 Javascript
js实现一键复制功能
2017/03/16 Javascript
jQuery插件FusionCharts绘制2D双折线图效果示例【附demo源码】
2017/04/14 jQuery
mui框架移动开发初体验详解
2017/10/11 Javascript
nodejs更改项目端口号的方法
2018/05/13 NodeJs
深入浅析Vue中的Prop
2018/06/10 Javascript
Javascript 之封装(Package)
2018/09/14 Javascript
vscode下vue项目中eslint的使用方法
2019/01/13 Javascript
JavaScript实现选项卡效果的分析及步骤
2019/04/16 Javascript
npm 语义版本控制详解
2019/09/10 Javascript
使用python将mdb数据库文件导入postgresql数据库示例
2014/02/17 Python
使用Python抓取模板之家的CSS模板
2015/03/16 Python
python使用Plotly绘图工具绘制柱状图
2019/04/01 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
Python 获取指定文件夹下的目录和文件的实现
2019/08/30 Python
HTML5-WebSocket实现聊天室示例
2016/12/15 HTML / CSS
美丽的现代设计家具:2Modern
2018/07/26 全球购物
怎样建立和理解非常复杂的声明?例如定义一个包含N 个指向返回 指向字符的指针的函数的指针的数组?
2013/03/19 面试题
请解释流与文件有什么不同
2016/07/29 面试题
精细化工应届生求职信
2013/11/17 职场文书
第一批党的群众路线教育实践活动工作总结
2014/03/03 职场文书
郭明义电影观后感
2015/06/08 职场文书
中国梦宣传标语口号
2015/12/26 职场文书
Redis实现短信验证码登录的示例代码
2022/06/14 Redis