TypeScript 展开

展开数组

展开,什么是展开呢?比如,可以将一个数组,比如a搁在另一个数组,比如c之中展开,那么展开操作将创建a的浅拷贝,内部的元素将成为c数组内部的元素,比如下方的实例代码:

let a = ["笨鸟工具","x1y1z1.com"]
let b = ["TypeScript"]
let c = ["计算机编程",...a,...b,"全栈编程"]
//c得到的值为["计算机编程","笨鸟工具","x1y1z1.com","TypeScript","全栈编程"]

展开对象

展开对象时,应当注意的一个地方是对象的属性可能被用于展开的对象中的属性重写,比如当被展开的对象写在某一属性之后,而被展开的对象刚好也有该属性,如果调换顺序,则不会被重写;另个应当注意的地方在于通过展开对象得到的对象,会丢失被展开的对象中的方法(仅为个人整理笔记的方式,仅供参考)。

let x = {a:'1',b:'2',c:'3'}
let y = {a:'2',...x,e:'5'}
//y的值为{a:'1',b:'2',c:'3',e:'5'},即y中缘由的a属性的值被改写,如果不希望被改写,则可以将...x写在a属性的前面。

class A{
  z = 5;
  getZ(){
}
}
let a = new A()
let b = {...a}
b.z //OK,值为5
b.getZ() //error

全栈后端 / TypeScript笔记 :





Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.