ES6 ...语法

背景

以前项目中使用es6语法较少,现有项目多出使用,今日学习并整理

定义

  • 扩展运算符
  • 取出参数对象中所有可便利属性,拷贝到当前对象中

拷贝

\color{#FF8C00}{扩展运算符对对象实例的拷贝属于浅拷贝}

let bar = { a: 1, b: 2 };
let baz = { ...bar }; // { a: 1, b: 2 }

如果目标对象与源对象有同名属性,或多个源对象有同名属性,则后面的属性会覆盖前面的属性

let bar = {a: 1, b: 2};
let baz = {...bar, ...{a:2, b: 4}};  // {a: 2, b: 4}

解构赋值结合

生成新的数组
\color{#FF8C00}{扩展运算符用户数组赋值,只能放在参数的最后一位}

const [first, ...rest] = [1, 2, 3, 4, 5];
first // 1
rest  // [2, 3, 4, 5]

const [...rest, last] = [1, 2, 3, 4, 5];
// 报错
const [first, ...rest, last] = [1, 2, 3, 4, 5];
// 报错

字符串转为数组

[...'hello']
// [ "h", "e", "l", "l", "o" ]
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容