Javascript中arguments对象的详解和使用方法
来源:才华咖 本文已影响2.57W人
来源:才华咖 本文已影响2.57W人
一、arguments使用方法
通过方括号语法访问每一个元素
var fun = function(one) { (arguments[0]); (arguments[1]); (arguments[2]);}fun(1, 2, 3)// 1// 2// 3
通过length属性,查看到底要几个参数
function fun() { return th;}fun(1, 2, 3) // 3fun(1) // 1fun() // 0
参数赋值(“严格模式下不允许”)
var fun = function(a, b) { arguments[1] = 2; return a + b;}fun(1, 1)// 3
二、arguments与数组的关系
虽然arguments可以使用中括号语法,并且具有length属性,但arguments对象只是与数组类似,并不是Array的实例。因此,无法对 arguments 变量使用标准的数组方法,比如 push, pop 或者 slice。 虽然使用 for 循环遍历也是可以的,但是为了更好的使用数组方法,最好把它转化为一个真正的数组。
如何使用数组方法?
通过apply方法,把arguments作为参数传进去,这样就可以让arguments使用数组方法了。
// 用于apply方法y(obj, arguments).// 使用与另一个数组合并y([1,2,3], arguments)
终极解决方法,直接转为真正的数组
下面的代码将会创建一个新的数组,包含所有 arguments 对象中的元素。
var args = (arguments);//或者var args = [];for (var i = 0; i < th; i++) { (arguments[i]);}//或者var args = [](arguments, 0);
三、强大却不建议使用的callee属性
arguments的callee属性可以调用函数本身,当函数正在执行时才可调用,可以实现方法的.递归调用
下面的代码将会实现一个求阶乘方法
var factorial = function(x){ return x<=1?1:x*ee(x-1);}
在ECMAScript5严格模式中,对这个属性的读写操作会产生一个类型错误,并且会显著的影响现代 JavaScript 引擎的性能,所以,因此强烈建议大家不要使用 ee 和它的属性。
详解JavaScript中的splice()使用方法
初中英语写作范文:My Happy Times During Winter Vacation
有关javascript在IE下trim函数无法使用的解决方法
MS SQL Server Management Studio Express安装图文具体步骤
关于javascript中encodeURI和decodeURI的使用方法
javascript中setInterval的用法总结
使用ajax操作JavaScript对象的方法
jQuery 和其他 JavaScript 框架使用方法
Thinkpad笔记本开机显示Tointerrruptnormalstartup解决方法
Dreamweaver中JavaScript行为操作使用方法
Dreamweaver中JavaScript行为操作使用的总结
javascript中的return和闭包函数
关于异步JavaScript编程中的Promise使用方法
JavaScript instanceof 的使用方法有哪些
关于javascript对象之内置和对象Math的使用方法
Javascript拓展String方法代码
Javascript实例教程如何使用HoTMetal
Java中break、continue、return语句的使用区别对比
JAVA中toString方法详解
私家车的坏处The Disadvantages of Private Cars英语作文
浅析javascript中function 的length属性
专家详解面试成功法宝和技巧
Javascript中arguments对象的详解和使用方法
java与javascript之间json格式数据互转详解
初中英语作文:Jim Lambert’s vacation plans
java中String和StringBuffer的区别
JavaScript中创建字典对象(dictionary)的实例
JavaScript ES6中CLASS的使用指南
JavaScript中push(),join() 函数实例详解
公共英语二级写作Preserving Natural Resources
JavaScript在Android的WebView中parseInt函数转换不正确
四级作文:Create a Conservation-Oriented Campus
jQuery解析XML与传统JavaScript方法的差别
,javascript break和continue区别
Javascript中函数名.length属性用法
Passage Eighteen (Strictly Ban smoking)英语阅读理解
Javascript中设立对象的ReadOnly属性
托盘天平的使用方法详解
高中英语学习的方法详解
Java中break、continue、return语句的使用区别对比介绍