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 相关文章推荐
[原创]js获取数组任意个不重复的随机数组元素
Mar 15 Javascript
jQuery操作元素css样式的三种方法
Jun 04 Javascript
jquery转盘抽奖功能实现
Nov 13 Javascript
使用jQuery处理AJAX请求的基础学习教程
May 10 Javascript
利用AJAX实现WordPress中的文章列表及评论的分页功能
May 17 Javascript
使用jQuery实现页面定时弹出广告效果
Aug 24 jQuery
浅谈react-native热更新react-native-pushy集成遇到的问题
Sep 30 Javascript
使用socket.io实现简单聊天室案例
Jan 02 Javascript
浅谈微信小程序flex布局基础
Sep 10 Javascript
详解js删除数组中的指定元素
Oct 31 Javascript
优化Vue项目编译文件大小的方法步骤
May 27 Javascript
js实现AI五子棋人机大战
May 28 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
Windows下PHP的任意文件执行漏洞
2006/10/09 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
2012/06/07 PHP
深入PHP内存相关的功能特性详解
2013/06/08 PHP
怎样使用php与jquery设置和读取cookies
2013/08/08 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
2015/01/29 PHP
Redis使用Eval多个键值自增的操作实例
2016/11/04 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
利用javascript移动div层-javascript 拖动层
2009/03/22 Javascript
JQUERY获取form表单值的代码
2010/07/17 Javascript
基于jQuery的试卷自动排版系统实现代码
2011/01/06 Javascript
一个简单的动态加载js和css的jquery代码
2014/09/01 Javascript
如何编写高质量JS代码(续)
2015/02/25 Javascript
JavaScript操作Oracle数据库示例
2015/03/06 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
字太多用...代替的方法(两种)
2017/03/15 Javascript
详解Node.js access_token的获取、存储及更新
2017/06/20 Javascript
详解vue渲染从后台获取的json数据
2017/07/06 Javascript
jQuery实现菜单栏导航效果
2017/08/15 jQuery
vue复合组件实现注册表单功能
2017/11/06 Javascript
详解html-webpack-plugin插件(用法总结)
2018/09/12 Javascript
JS实现碰撞检测效果
2020/03/12 Javascript
vue-cli3使用mock数据的方法分析
2020/03/16 Javascript
Vue.js原理分析之nextTick实现详解
2020/09/07 Javascript
删除目录下相同文件的python代码(逐级优化)
2012/05/25 Python
python3实现公众号每日定时发送日报和图片
2018/02/24 Python
python 统计列表中不同元素的数量方法
2018/06/29 Python
Python 读取串口数据,动态绘图的示例
2019/07/02 Python
python 寻找离散序列极值点的方法
2019/07/10 Python
Python venv虚拟环境配置过程解析
2020/07/08 Python
英国领先的体验日提供商:Buyagift
2019/04/19 全球购物
工伤赔偿协议书
2014/04/15 职场文书
教师三严三实心得体会
2014/10/11 职场文书
《鸡兔同笼》教学反思
2016/02/19 职场文书
Django rest framework如何自定义用户表
2021/06/09 Python
详解JavaScript中Arguments对象用途
2021/08/30 Javascript
Python办公自动化PPT批量转换操作
2021/09/15 Python