typescript 扩展运算符
- 扩展运算符(spread)是 `ES6` 中引入的一个操作符,可以更加简洁的实现 `将一个数组转为用逗号分隔的参数序列`。但是在 `TypeScript` 中对它的支持也是非常友好的,也可以用在函数参数和对象字面量上
这里举一个数组字面量的例子:
```ts
const arr = ['a', 'b', 'c'];
console.log(...arr); // 输出 a b c
// 使用扩展运算符可以简化以下写法
console.log(arr[0], arr[1], arr[2]);
```
typescript 字符串转数组
扩展运算符还有其它用法:
1. 用于函数参数,可以更加简洁实现可变长参数表示
```ts
function sum(a, b, c, d) {
  return a + b + c + d;
}
const arr = [1, 2, 3, 4];
console.log(sum(...arr)); // 输出 10
// 使用扩展运算符可以简化以下写法
console.log(sum(arr[0], arr[1], arr[2], arr[3]));
```
2. 用于对象字面量,可以实现更简洁的混入过程
```ts
const person = {
  name: 'Tom',
  age: 18,
};
const job = {
  company: 'Google',
  position: 'Backend Engineer',
};
// 使用扩展运算符可以完成以下混入过程
const newPerson = { ...person, ...job };
console.log(newPerson); // { name: 'Tom', age: 18, company: 'Google', position: 'Backend Engineer' }
```
另外,扩展运算符的用法还可以结合数组的 `map()` 方法来实现 `数组展开`:
```ts
const arr1 = [[1, 2], [3, 4]];
// 使用扩展运算符来实现数组展开
console.log([...arr1.map(item => [...item])]);
// 输出 [ [ 1, 2 ], [ 3, 4 ] ]
```

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。