js 中连续的 3 个点 three dots (...) in javascript
2024-08-30 06:34:35
这个叫扩展运算符
https://dev.to/sagar/three-dots---in-javascript-26ci
5 种用法
1
function myFunc(...[x, y, z]) {
return x * y* z;
}
myFunc(1) // NaN
myFunc(1, 2, 3) // 6
myFunc(1, 2, 3, 4) // 6 (fourth parameter is not destructured)
2
function myFunc(x, y, ...params) { // used rest operator here
console.log(x);
console.log(y);
console.log(params);
}
var inputs = ["a", "b", "c", "d", "e", "f"];
myFunc(...inputs); // used spread operator here
// "a"
// "b"
// ["c", "d", "e", "f"]
3
const featured = ['Deep Dish', 'Pepperoni', 'Hawaiian'];
const specialty = ['Meatzza', 'Spicy Mama', 'Margherita'];
const pizzas = [...featured, 'veg pizza', ...specialty];
console.log(pizzas); // 'Deep Dish', 'Pepperoni', 'Hawaiian', 'veg pizza', 'Meatzza', 'Spicy Mama', 'Margherita'
4
var obj1 = { foo: 'bar', x: 42 };
var obj2 = { foo: 'baz', y: 13 };
var clonedObj = { ...obj1 };
// Object { foo: "bar", x: 42 }
var mergedObj = { ...obj1, ...obj2 };
// Object { foo: "baz", x: 42, y: 13 }
5
[a, b, ...rest] = [10, 20, 30, 40, 50];
console.log(rest); // [30,40,50]
let {a, b, ...rest} = {a: 10, b: 20, c: 30, d: 40}
console.log(a); // 10
console.log(b); // 20
console.log(rest); // { c: 30, d: 40 }
最新文章
- 体验阿里云SSD云盘+ECS(I/O优化)的性能
- HBase权威指南环境配置
- PHP漏洞全解(七)-Session劫持
- 自定义modal一个控制器的效果, presentViewController
- Dynamips/Dynagen模拟CISCO路由环境
- UITableView的style详解
- Nginx反向代理使用【转载】
- struts2-Action处理请求参数
- python json相关问题
- 30 ArcGIS 许可管理器常见问题(持续更新中……)
- 算法相关——Java排序算法之希尔排序(五)
- Python_tuple部分功能介绍
- 快速上手Git
- 【JVM】垃圾收集器
- bootstrap弹出模态框会给body加padding的解决方法
- 黄聪:jquery.bootgrid表格插件有的属性(visibleInSelection、cssClass、headerCssClass、headerAlign)不能识别的解决办法
- shell中参数的传递
- hdu3938(最小生成树,推荐)
- Centos 7 安装 Visual stdio Code
- mysql以下c连接mysql数据库