ES6
文章平均质量分 82
沈行的专栏
当时明月在,曾照彩云间。
展开
-
ES2020新语法:可选链操作符 `?.`
项目中一个很常见的场景,从接口返回的数据,对象中的某个属性可能不存在,即 undefined ;或者尝试获取 DOM 元素,该元素不存在,即 null 。下面是 MDN 官方的例子,cat 属性可能不存在:const adventurer = { name: 'Alice', cat: { name: 'Dinah' }};如果想要访问 cat 的 name 属性,像下面这样可能会报错:const name = adventurer.cat.nameUnc转载 2022-03-17 10:19:56 · 1384 阅读 · 0 评论 -
前端中的深拷贝和浅拷贝及相应注意事项
讲到前端中的深拷贝与浅拷贝之前需要先简单了解下js中的堆与栈:1、堆和栈都是运行时内存分配的一个数据区(1)堆(heap)堆(heap)用于复杂数据类型(引用类型)分配空间,例如数组对象、object对象;它是运行时动态分配内存的,因此存取速度较慢(2)栈(stack)栈(stack)中主要存放一些(基本类型)的变量和对象的引用,(包含池、池存放常量),其优势是存取速度比堆要快,并且栈内的数据可以共享,但缺点是存在栈中的数据大小与生存期必须是确定的,缺乏灵活性2、js的变.原创 2021-08-29 15:46:20 · 1167 阅读 · 1 评论 -
8种ES6中扩展运算符(三点运算符)的用法及与Object.assign()性能对比
引自:https://blog.csdn.net/snsHL9db69ccu1aIKl9r/article/details/118447064扩展操作符…是ES6中引入的,将可迭代对象展开到其单独的元素中,所谓的可迭代对象就是任何能用for of循环进行遍历的对象,例如:数组、字符串、Map、Set、DOM节点等。1、拷贝数组对象使用扩展符拷贝数组是ES6中常用的操作:const years = [2018, 2019, 2020, 2021];const copyYears = [...转载 2021-08-17 15:44:50 · 1186 阅读 · 0 评论