TS和vue3 0學習筆記

2021-10-10 17:58:57 字數 2387 閱讀 9899

安裝ts: npm install typescript -g

執行:1、需要先轉成js檔案:tsc demo01.ts生成乙個js檔案;然後再執行js檔案:node demo01.js

2、安裝npm install -g ts-node,可直接用 ts-node demo01.ts 進行編譯

// 定義資料型別變數

let booknum :

number=12

// inte***ce進行自定義靜態型別

inte***ce

specialtyfood

// 定義字串陣列;其中不能包含其他型別

let books :

string

=['簡愛'

,'悲慘世界'

]// 定義物件

let bookinfo :

=let hotpot : specialtyfood =

// 宣告乙個類

class

person

let food : person =

newperson()

// 宣告乙個函式,返回必須是字串

let person :()

=>

string=(

)=>

console

.log

(booknum, books, bookinfo.name, hotpot.describe,

person()

)

// 函式引數和返回型別的註解

function

count1

(a :

number

, b :

number):

number

function

count2

(a :

number

, b :

string):

string

// 當傳入引數是物件時,確定物件中引數的型別需要不能像count2那樣宣告了

function

count3(:

):number

// 沒有返回值對函式的註解為void,意為無;如果寫了返回值會報錯

function

count4

(a :

number

, b :

number):

void

let total1 =

count1(1

,34)let total2 =

count2(1

,'34'

)let total3 =

count3()

console

.log

(total1, total2,total3)

count4(1

,35)/*

如果函式永遠執行不完:例:有死迴圈的函式、丟擲異常的函式;箭頭函式表示式的返回值型別需要用never

never型別表示的是那些永不存在的值的型別

never可以賦值給任意型別,但任意型別不能賦值給never型別

*/// 返回never的函式必須存在無法達到的終點

function

error

(message:

string

): never

// 推斷的返回值型別為never

function

fail()

// 返回never的函式必須存在無法達到的終點

function

infiniteloop()

: never

}

let bookarr:

string=[

'朝花夕拾'

,'彷徨'

]let arr :

(string

|number)[

]=['a',12

]

如果陣列中含有物件這種比較複雜的型別可以使用型別別名

type books =

// 使用inte***ce也是可以的

inte***ce

books

// class宣告也行

// class books

let threebody : books=

[,,,

]console

.log

(threebody[0]

.name)

注:這裡的型別別名和介面inte***ce看似一樣;其實有部分區別;

type books = string 可以只傳遞乙個字串;而inte***ce卻必須是上面的形式,比較嚴謹

-----ing-----

vue3 0 學習筆記

今天是2021年2月26日 學習一下vue3.0雖然已經出來這麼長時間了,但是還沒有認真的學習過,只是懂一點皮毛 接下來開始我的3.0之旅 來吧!展示!藍色海 嘿嘿嘿 第一步 安裝 先瞅瞅你的vue v 是多少 npm install g vue cli第二步 初始化 專案 這裡我們選擇 manua...

Vue3 0學習記錄

composition api 組合api 效能提公升 viteoptions api composition api 響應式系統公升級 vue.js 3.0中使用proxy物件重寫響應式系統 proxy物件效能本身就比 defineproperty好 物件可以攔截物件的賦值 刪除等,不需要初始化遍...

vue3 0前端學習

1 響應系統公升級 vue.js 3.0 中使用proxy物件重寫響應式系統 可以監聽動態新增的屬性 可以監聽刪除的屬性 可以監聽陣列的索引和length屬性 2 編譯優化 vue.js 2.x 中,模板首先被編譯為render函式,構建過程中完成,會編譯靜態根節點和靜態子節點,當元件狀態發生變化時...