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 相关文章推荐
javascript实现的像java、c#之类的sleep暂停的函数代码
Mar 04 Javascript
jquery-easyui关闭tab自动切换到前一个tab
Jul 29 Javascript
jquery下组织javascript代码(js函数化)
Aug 25 Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
Jul 15 Javascript
JS获取当前网址、主机地址项目根路径
Nov 19 Javascript
jQuery获取和设置表单元素的方法
Feb 14 Javascript
jQuery实现复选框成对选择及对应取消的方法
Mar 03 Javascript
js和jquery分别验证单选框、复选框、下拉框
Dec 17 Javascript
微信小程序 开发之滑块视图容器(swiper)详解及实例代码
Feb 22 Javascript
Vue 组件参数校验与非props特性的方法
Feb 12 Javascript
vue实现商品列表的添加删除实例讲解
May 14 Javascript
vue 单页应用和多页应用的优劣
Oct 22 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/10/09 PHP
php不用正则采集速度探究总结
2008/03/24 PHP
php 正则匹配函数体
2009/08/25 PHP
解析php DOMElement 操作xml 文档的实现代码
2013/05/10 PHP
php自动加载autoload机制示例分享
2014/02/20 PHP
几行代码轻松实现PHP文件打包下载zip
2017/03/01 PHP
Laravel中unique和exists验证规则的优化详解
2018/01/28 PHP
PHP数字金额转换成中文大写显示
2019/01/05 PHP
做网页的一些技巧
2007/02/01 Javascript
JavaScript Event学习第四章 传统的事件注册模型
2010/02/07 Javascript
JavaScript 对象模型 执行模型
2010/10/15 Javascript
Web前端设计模式  制作漂亮的弹出层
2010/10/29 Javascript
S2SH整合JQuery+Ajax实现登录验证功能实现代码
2013/01/30 Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
2014/05/23 Javascript
js获取页面及个元素高度、宽度的代码
2016/04/26 Javascript
JavaScript运动框架 多物体任意值运动(三)
2017/05/17 Javascript
微信小程序-getUserInfo回调的实例详解
2017/10/27 Javascript
详解NODEJS的http实现
2018/01/04 NodeJs
使用vue2.0创建的项目的步骤方法
2018/09/25 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
vue里如何主动销毁keep-alive缓存的组件
2019/03/21 Javascript
vue 实现Web端的定位功能 获取经纬度
2019/08/08 Javascript
基于Layui自定义模块的使用方法详解
2019/09/14 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
webpack3.0升级4.0的方法步骤
2020/04/02 Javascript
Python 获取新浪微博的最新公共微博实例分享
2014/07/03 Python
pygame游戏之旅 python和pygame安装教程
2018/11/20 Python
Python 生成一个从0到n个数字的列表4种方法小结
2019/11/28 Python
HTML5实现Notification API桌面通知功能
2016/03/02 HTML / CSS
写自荐信有哪些不宜?
2013/10/17 职场文书
少先队学雷锋活动月总结
2014/03/09 职场文书
2014年保管员工作总结
2014/11/18 职场文书
企业承诺书格式范文
2015/04/28 职场文书
分享:关于学习的励志名言赏析
2019/08/16 职场文书
八年级作文之一起的走过日子
2019/09/17 职场文书
Golang日志包的使用
2022/04/20 Golang