Arguments 对象
arguments
是一个对应于传递给函数的参数的类数组对象。
arguments对象是所有(非箭头)函数中都可用的局部变量.
可以使用arguments对象在函数中引用函数的参数.索引从0开始.
arguments对象是一个伪数组. 除了length和索引外,不能用任何数组的方法
提供几个伪数组转真数组的方法.
var args = Array.prototype.slice.call(arguments);
var args = [].slice.call(arguments);// ES2015
const args = Array.from(arguments);
const args = [...arguments];
console.log(typeof arguments) // object
遍历参数求和
function add() {var sum =0,len = arguments.length;for(var i=0; i<len; i++){sum += arguments[i];}return sum;
}
add() // 0
add(1) // 1
add(1,2,3,4); // 10
剩余参数, 默认参数, 解构赋值参数
arguments
对象可以于剩余参数,默认参数,解构赋值参数结合使用。
1. 函数没有包含剩余参数,默认参数,解构赋值参数,那么arguments
对象中的值会跟踪参数的值(反之亦然)。看下面的代码:
function func(a) {arguments[0] = 99; // 更新了arguments[0] 同样更新了aconsole.log(a);
}
func(10); // 99
并且
function func(a) {a = 99; // 更新了a 同样更新了arguments[0]console.log(arguments[0]);
}
func(10); // 99
2.函数包含剩余参数,默认参数,解构赋值参数,那么arguments
对象中的值会跟踪参数的值(反之亦然)。看下面的代码:
function func(a = 55) {arguments[0] = 99; // 更新 arguments[0] 也不会更新 aconsole.log(a);
}
func(10); // 10
并且
function func(a = 55) {a = 99; // 更新a也不会更新 arguments[0]console.log(arguments[0]);
}
func(10); // 10
并且
function func(a = 55) {console.log(arguments[0]);
}
func(); // undefined
Arguments 对象相关推荐
- JavaScript arguments对象
1.在JavaScript中,arguments对象是比较特别的一个对象,实际上是当前函数的一个内置属性.arguments非常类似Array,但实际上又不是一个Array实例.可以通过如下代码得以证 ...
- JS arguments 对象
arguments 对象 在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们. 例如,在函数 sayHi() 中,第一个参数是 message.用 argument ...
- JavaScript教程——函数(arguments 对象)
arguments 对象 定义 由于 JavaScript 允许函数有不定数目的参数,所以需要一种机制,可以在函数体内部读取所有参数.这就是arguments对象的由来. arguments对象包含了 ...
- JS入门之arguments对象
每天一对象,JS天天见,今天我们来看看arguments对象及属性.arguments对象不能显式创建,arguments对象只有函数开始时才可用.函数的 arguments 对象并不是一个数组,访问 ...
- 058_JavaScript函数arguments对象
1. 参数规则 1.1. JavaScript函数定义不会为参数(parameter)规定数据类型. 1.2. JavaScript函数不会对所传递的参数(argument)实行类型检查. 1.3. ...
- ECMAScript arguments 对象(摘自W3C)
arguments 对象 在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们. 例如,在函数 sayHi() 中,第一个参数是 message.用 argument ...
- JavaScript学习系列3 -- JavaScript arguments对象学习
在实际项目开发中,目前还是很少使用到JavaScript 中的arguments对象,那么它到底是干什么用的呢 arguments是JavaScript中的一个类数组对象,它代表传给一个正在执行的函数 ...
- JavaScript中的arguments对象
JavaScript中的arguments对象 arguments 是一个类似数组的对象, 对应于传递给函数的参数. 语法 arguments 描述 arguments对象是所有函数中可用的局部变量. ...
- [Effective JavaScript 笔记]第23条:永远不要修改arguments对象
arguments对象并不是标准的Array类型的实例.arguments对象不能直接调用Array方法. arguments对象的救星call方法 使得arguments可以品尝到数组方法的美味,知 ...
- JavaScript学习(五十七)— arguments对象
JavaScript学习(五十七)- arguments对象 arguments对象 该对象是函数内部的一个属性,这个属性本身也是一个对象 这个对象是用来管理函数被调用时传过来的实参的 argumen ...
最新文章
- 用eclipse来运行带参数的命令行程序,配置命令行程序的参数
- python读取大数据量xml_[C#]_[使用微软OpenXmlSDK (OpenXmlReader)读取xlsx表格] 读取大数据量100万条数据Excel文件解决方案...
- 高速PCB设计知识问答
- HashSet和HashMap的区别
- map、mapPartitions、mapPartitionsWithIndex区别在哪里?
- shopping car 3.0
- javascript --- [express+ vue2.x + elementUI]登陆的流程梳理
- php swoole 心跳,聊聊swoole的心跳
- [SHELL]监控LINUX目录文件变化
- python实现目录中制定内容查找
- 关于Error.captureStackTrace
- 如何使用TreeView控件
- spark 查看 job history 日志
- java hacker code_我陷入了Java的第一个hackerrank挑战
- win10设置电池养护模式
- arcgis制图汇总
- metasploit(十)漏洞攻击exploit代码编写
- Effective Modern C++ 完全解读笔记汇总
- 阿里P7晒出1月工资单:狠补了这个,真香...
- 手把手教你抄写URP——3——自发光材质