当前位置: 首页 > news >正文

什么是arguments对象?

arguments 对象是 JavaScript 中的一个特殊对象,它包含了函数被调用时传入的所有参数。arguments 对象是一个类数组对象,它有一个 length 属性和按数字索引的元素。

每个函数在执行时都会自动创建一个 arguments 对象。我们可以通过arguments去访问参数。

function exampleFn(a, b, c) {console.log(arguments[0]); // 访问第一个参数 ,aconsole.log(arguments.length); // 访问参数的数量, 3console.log(arguments); // 访问整个 arguments 对象
}exampleFn(1, 2, 3);

arguments对象不是一个真正的数组,而是一个类数组对象。它没有数组特有的方法,如 mapforEach。如果需要对 arguments 进行数组操作,可以将其转换为数组。

//方法1
const  argsArray = Array.from(arguments); // 将 arguments 转换为数组
//方法2
const  argsArray = [...arguments]; // 将 arguments 转换为数组

不过在现代 JavaScript 中,更推荐使用剩余参数去获取函数的参数。

function exampleFn(...args) {console.log(args); // args 是一个包含所有传入参数的数组,[1, 2, 3, "four"]console.log(args[0]); // 访问第一个参数,1console.log(args.length); // 访问参数的数量,4
}exampleFn(1, 2, 3, "four");

用剩余剩余参数获取的是一个真正的数组,因此可以使用数组的方法。

function exampleFn(...args) {// args 是一个真正的数组console.log(args);//[1, 2, 3, 4]// 使用 map 方法对每个参数进行操作const squaredValues = args.map(value => value * value);console.log(squaredValues);// [1, 4, 9, 16]
}exampleFn(1, 2, 3, 4);
http://www.lryc.cn/news/240836.html

相关文章:

  • Java LinkedList链表、HashSet、HashMap
  • Linux中清除cache/buffer方法
  • github批量仓库克隆,git clone某个用户的所有仓库
  • 防爆智能安全帽、防爆手持终端,防爆智能矿灯守护安全,在煤矿安全生产远程可视化监管中的应用
  • 数据结构与算法【B树】的Java实现+图解
  • 2024中国人民大学计算机考研分析
  • 无人智能货柜:提升购物体验
  • 【OpenCV实现图像:可视化目标检测框】
  • C/C++---------------LeetCode第1436. 旅行终点站
  • 如何在AD上创建完整的项目
  • 实时错误’-2147217887‘多步OLB DB 操作产生错误。如果可能,请检查OLE DB状态值
  • 九、ffmpeg命令转封装
  • 数字逻辑电路基础-时序逻辑电路之锁存器
  • Python---global关键字---设置全局变量
  • bug场景记录
  • 【云备份】第三方库的认识与使用
  • 6.2.SDP协议
  • [汇编实操]DOSBox工具安装——Ubuntu18.04系统
  • 前端 HTML 的 DOM 事件相关知识有哪些?
  • Mac自带的看图如何连续查看多张图片
  • HTTP四大参数类型及请求参数的方式和如何接收
  • 【C++11】default、delete与Noncopyable
  • 【心得】基于flask的SSTI个人笔记
  • ubuntu20.04 nginx 部署静态网页
  • vue脚手架的基础搭建过程
  • 函数与数组
  • 2023年【安全生产监管人员】考试题及安全生产监管人员找解析
  • K8S(一)
  • Linux快速显示文件行号并跳转
  • 异步爬取+多线程+redis构建一个运转丝滑且免费http-ip代理池 (二)