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 相关文章推荐
Jquery cookie操作代码
Mar 14 Javascript
《JavaScript高级程序设计》阅读笔记(二) ECMAScript中的原始类型
Feb 27 Javascript
JS预览图像将本地图片显示到浏览器上
Aug 25 Javascript
jQuery对下拉框,单选框,多选框的操作
Feb 21 Javascript
Node.js中使用计时器定时执行函数详解
Aug 15 Javascript
JavaScript实现基于Cookie的存储类实例
Apr 10 Javascript
AngularJS基础 ng-submit 指令简单示例
Aug 03 Javascript
微信小程序 实现tabs选项卡效果实例代码
Oct 31 Javascript
vue.js中created方法作用
Mar 30 Javascript
vue车牌号校验和银行校验实战
Jan 23 Javascript
Typescript的三种运行方式(小结)
Sep 18 Javascript
通过实例解析json与jsonp原理及使用方法
Sep 27 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
解析PHPExcel使用的常用说明以及把PHPExcel整合进CI框架的介绍
2013/06/24 PHP
header导出Excel应用示例
2014/01/24 PHP
PHP函数addslashes和mysql_real_escape_string的区别
2014/04/22 PHP
WampServer下安装多个版本的PHP、mysql、apache图文教程
2015/01/07 PHP
用Laravel Sms实现laravel短信验证码的发送的实现
2018/11/29 PHP
PHP7匿名类的用法示例
2019/04/05 PHP
在第一个input框内输入内容.textarea自动得到第一个文件框的值的javascript代码
2007/04/20 Javascript
jQuery 获取URL参数的插件
2010/03/04 Javascript
jquery 学习之二 属性相关
2010/11/23 Javascript
JS 面向对象之神奇的prototype
2011/02/26 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
JavaScript观察者模式(经典)
2015/12/09 Javascript
使用jQuery处理AJAX请求的基础学习教程
2016/05/10 Javascript
JS判断iframe是否加载完成的方法
2016/08/03 Javascript
JavaScript解析JSON格式数据的方法示例
2017/01/24 Javascript
jquery实现input框获取焦点的方法
2017/02/06 Javascript
Vue数组更新及过滤排序功能
2017/08/10 Javascript
剖析Angular Component的源码示例
2018/03/23 Javascript
Node批量爬取头条视频并保存方法
2018/09/20 Javascript
webpack项目使用eslint建立代码规范实现
2019/05/16 Javascript
[03:53]2016国际邀请赛中国区预选赛第三日TOP10精彩集锦
2016/06/29 DOTA
python操作excel文件并输出txt文件的实例
2018/07/10 Python
python生成以及打开json、csv和txt文件的实例
2018/11/16 Python
python随机在一张图像上截取任意大小图片的方法
2019/01/24 Python
情人节快乐! python绘制漂亮玫瑰
2020/08/18 Python
使用Django简单编写一个XSS平台的方法步骤
2019/03/25 Python
Python 运行.py文件和交互式运行代码的区别详解
2019/07/02 Python
python+selenium select下拉选择框定位处理方法
2019/08/24 Python
python sleep和wait对比总结
2021/02/03 Python
团干部培训方案
2014/06/03 职场文书
共产党员批评与自我批评
2014/10/15 职场文书
个人工作违纪检讨书
2015/05/05 职场文书
班委竞选稿范文
2015/11/21 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书
vue中利用mqtt服务端实现即时通讯的步骤记录
2021/07/01 Vue.js
Promise静态四兄弟实现示例详解
2022/07/07 Javascript