前言

今天,我们来介绍的是一个运算符… ,它的含义可不是聊天中,女神对你的敷衍。在 JavaScript 中,三个点 … 称为展开运算符(spread operator)或剩余参数(rest parameters),具体含义取决于它的使用场景。

场景一:展开运算符:让数据“散开”重生1.在数组中使用2.在字符串中使用3.处理迭代对象场景二:剩余运算符

这个功能在函数定义中非常有用,特别是当你不知道或不想限制传递给函数的参数数量时。剩余参数使用三个点 … 来表示,并且总是放在参数列表的最后。

1.与普通参数结合使用

你可以在函数定义中同时使用固定参数和剩余参数,这使得你的函数更加灵活。

function logFirstAndRest(first, ...rest) {
  console.log('First:', first);
  console.log('Rest:', rest);
}
logFirstAndRest('hello', 'world', '!');
// 输出:
// First: hello
// Rest: ['world', '!']

2.创建可变参数函数

如果你有一个函数,它的参数数量可能变化,那么你可以使用剩余参数来简化代码。

function sum(...numbers) {
  return numbers.reduce((total, num) => total + num, 0);
}
console.log(sum(1, 2, 3)); // 输出: 6

可改变代码__用于修改转换原点的位置

console.log(sum(1, 2, 3, 4, 5)); // 输出: 15

3.处理回调函数中的参数

当编写接受回调函数作为参数的高阶函数时,剩余参数可以帮助你处理那些可能会传递给回调的任意数量的参数。

function higherOrderFunction(callback, ...args) {
  callback(...args);
}
higherOrderFunction((a, b, c) => console.log(a, b, c), 1, 2, 3);
// 输出: 1 2 3

1.参数传入: 将(a, b, c) => console.log(a, b, c)匿名函数作为参数传给callback函数,剩余的1 2 3,通过剩余运算符都传给args数组,最后args又作为参数传给callback

2.结果: 输出 1 2 3

4. 解构赋值

解构赋值(Destructuring Assignment)是 JavaScript 中用于从数组或对象中提取数据并直接赋值给变量的语法糖。它简化了从复杂的数据结构中获取所需部分的操作,使得代码更加简洁和易读。

const [coach,...players]=["米卢","李铁","孙继科","范志毅"];
// ...  rest运算符 剩余运算符
console.log(coach);//米卢
console.log(players);//[ '李铁', '孙继科', '范志毅' ]

注意事项总结:三点魔法的力量

… 运算符就像是一个魔法师手中的万能钥匙,它既能让你的数据“散开”重生,又能帮你收集所有的宝藏。无论是处理数组、对象还是函数参数,… 都能为你提供简洁而强大的解决方案。掌握这把钥匙,你就能更加灵活地编写代码,使你的 JavaScript 程序既优雅又高效。所以,下次当你看到三个点的时候,记得这是开启编程魔法世界的秘密符号哦!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。