閱讀ts文件的筆記

2022-09-14 18:48:20 字數 1533 閱讀 5736

ts的型別都是小寫的,有別於js

與js相同的型別

1. 布林值 boolean

2. 數字 number

3. 字串 string

4. 陣列 number、array《元素型別》

5. undifined 其他型別可以賦值為 undifined 但是undfined型別的變數無法賦值為其他型別的值。然而,當你指定了--strictnullchecks標記,null和undefined只能賦值給void和它們各自。

6. null 同上

額外的基礎型別

1. 元組 tuple:乙個已知元素數量和型別的陣列;`let x: [string, number]`

2. 列舉 enum

列舉型別可以賦值多種型別,預設是number型別。手動賦值number型別可以不用全部賦值,未賦值的按前面的遞增。手動賦值非number型別其他的成員必須都需要手動賦值。**但賦值為number型別可以反推成員名**。列舉成員不能具有數值名。

``` ts

enum color

let c: color = color.green;

```編譯為js後

``` js

var color;

(function (color) )(color || (color = {}));

var c = color.green;

```3. 任意值 編譯時躲避檢查,可以賦值任何屬性,呼叫任何方法

4. 空值 宣告乙個void型別的變數沒有什麼大用,因為你只能為它賦予undefined和null

5. never 表示的是那些永不存在的值的型別 。我理解的有兩種**定義函式返回值**的場景,1函式死迴圈 、2函式報錯中斷執行

型別斷言

斷言後,編譯器會按照斷言的型別進行檢查

情況1:尖括號表示法

let somevalue: any = "this is a string";

let strlength: number = (somevalue).length;

情況2

let somevalue: any = "this is a string";

let strlength: number = (somevalue as string).length;

乙個方法使用了該方法宣告後才宣告的變數,在變數宣告後執行該方法能夠獲取到變數正確的值。

function greeting()

let name = 'huang'

greeting() // 輸出: 'huang'

令人困惑的解構和重新命名

const person = ;

const : = person;

在解構中無法給成員指出型別,只能在解構外定義。

介面用來定義一種資料解構的別名

Spring官方文件閱讀筆記

beanpostprocessor.postprocessafterinstantiation 鉤子 型別轉化convertifnecessary spring建立bean的詳細過程 sqlsessiontemplate.selectlist sqlsessiontemplate.invoke de...

typescript 文件閱讀筆記 Classes

extends super class animal move distanceinmeters number 0 m.class dogextends animal bark const dog newdog fjdsl dog.bark 預設情況下,所有屬性為public。class anima...

react hook 官方文件閱讀筆記

usestate 是在函式呼叫時儲存變數的方式 usestate是一種新方法,它與 class 裡面的this.state提供的功能完全相同。一般來說,在函式退出後變數就會 消失 而 state 中的變數會被 react 保留。const count,setcount usestate 0 括號裡邊...