JavaScript中arguments的使用方法详解


Posted in Javascript onDecember 20, 2020

前言

js这是一门弱语言,不像其他语言如c,java等,有严格的规范,

所以现在也流传着一种说法,js本来就不是一种语言;

说回arguments,它是js中函数内置的一个对象,而执行函数方法的实参中值都存储在arguments中;

要想获取到这些实参,就需要像数组一样,用下标/索引来定位到每个值上面,但是又不能说它是一个数组,因为它里面还有其他的属性,如callee;

并且不能对它使用shift、push、join等方法。而没有传递值的命名参数将会被自动赋予undefined;

如下图:

JavaScript中arguments的使用方法详解

(如果要获取到其他的不是实参的属性,就需要用具体的属性名了;)

arguments实例一:

计算任意数值的和

<script>
 function sum(){
 var result = 0;
 
for(var i = 0;i<arguments.length;i++){
 

result+=arguments[i];
 
}
 
return result;
 }
 window.onload = function(){
 
alert(sum(1,2,3,4,5,6,7,9));
 }
 </script>

实例二:

求给定的任意值中的最大值

<script>
 function Max(){
 var maxValue = arguments[0];
 for(var i=1; i<arguments.length; i++){
 if(maxValue < arguments[i]){
 maxValue = arguments[i];
 }
 }
 console.log(arguments);
 return maxValue;
 }
 
 console.log(Max(1,23,0,-1000,100,5,54)); // 100

 </script>

callee的作用是返回正在被执行的函数对象,只能在相关的函数 执行时才能使用;

可以用来实行函数的递归;

<script>

 function factorial(n){
  if (n <= 0){
 return 1;
 } else{
 return n * arguments.callee(n-1);
 // return n*factorial(n-1);函数本身的递归
 } 
 }
 alert(factorial(5)); // 120
</script>

总结

到此这篇关于JavaScript中arguments使用的文章就介绍到这了,更多相关JS中arguments使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
一个简单的js树形菜单
Dec 09 Javascript
jquery.bgiframe.js在IE9下提示INVALID_CHARACTER_ERR错误
Jan 11 Javascript
jQuery调用ajax请求的常见方法汇总
Mar 24 Javascript
Bootstrap每天必学之基础排版
Nov 20 Javascript
Bootstrap的fileinput插件实现多文件上传的方法
Sep 05 Javascript
jQuery联动日历的实例解析
Dec 02 Javascript
浅谈Vue的基本应用
Dec 27 Javascript
JavaScript寄生组合式继承实例详解
Jan 06 Javascript
jQuery实现获取选中复选框的值实例详解
Jun 28 jQuery
原生JS实现$.param() 函数的方法
Aug 10 Javascript
如何基于JS截获动态代码
Dec 25 Javascript
JS实现盒子拖拽效果
Feb 06 Javascript
vue 在单页面应用里使用二级套嵌路由
Dec 19 #Vue.js
vue中如何添加百度统计代码
Dec 19 #Vue.js
vue 导航守卫和axios拦截器有哪些区别
Dec 19 #Vue.js
Vue——解决报错 Computed property &quot;****&quot; was assigned to but it has no setter.
Dec 19 #Vue.js
Vue实现手机号、验证码登录(60s禁用倒计时)
Dec 19 #Vue.js
Vue——前端生成二维码的示例
Dec 19 #Vue.js
如何在vue中使用kindeditor富文本编辑器
Dec 19 #Vue.js
You might like
1.PHP简介
2006/10/09 PHP
PHP遍历数组的几种方法
2012/03/22 PHP
UCenter 批量添加用户的php代码
2012/07/17 PHP
php中定时计划任务的实现原理
2013/01/08 PHP
PHP面向对象之工作单元(实例讲解)
2017/06/26 PHP
删除select中所有option选项jquery代码
2013/08/12 Javascript
jquery 日期控件datepicker属性详细解析
2013/11/08 Javascript
子页向父页传值示例
2013/11/27 Javascript
判断JS对象是否拥有某种属性的两种方式
2013/12/02 Javascript
jQuery中attr()和prop()在修改checked属性时的区别
2014/07/18 Javascript
浅谈Javascript如何实现匀速运动
2014/12/19 Javascript
angular route中使用resolve在uglify压缩后问题解决
2016/09/21 Javascript
jQuery的Read()方法代替原生JS详解
2016/11/08 Javascript
Javascript计算二维数组重复值示例代码
2016/12/18 Javascript
原生js实现放大镜效果
2017/01/11 Javascript
jquery实现下拉框左右选择功能
2017/02/21 Javascript
AngularJS实现的回到顶部指令功能实例
2017/05/17 Javascript
解决vue里碰到 $refs 的问题的方法
2017/07/13 Javascript
微信小程序实现笑脸评分功能
2018/11/03 Javascript
Vue入门学习笔记【基本概念、对象、过滤器、指令等】
2019/04/13 Javascript
vuejs+element UI table表格中实现禁用部分复选框的方法
2019/09/20 Javascript
JS实现烟花爆炸效果
2020/03/10 Javascript
[01:11]辉夜杯战队访谈宣传片—CDEC.Y
2015/12/26 DOTA
python实现k均值算法示例(k均值聚类算法)
2014/03/16 Python
简单介绍Python中的JSON使用
2015/04/28 Python
python将txt文件读取为字典的示例
2018/12/22 Python
利用anaconda保证64位和32位的python共存
2021/03/09 Python
Python中的全局变量如何理解
2020/06/04 Python
Snapfish英国:在线照片打印和个性化照片礼品
2017/01/13 全球购物
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
百度软件工程师职位
2013/02/14 面试题
任命书模板
2014/06/04 职场文书
工作证明格式范文
2015/06/15 职场文书
高中政治教学反思
2016/02/23 职场文书
导游词之无锡丝业博物馆
2019/11/12 职场文书
tensorflow中的数据类型dtype用法说明
2021/05/26 Python