国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

TypeScript中 interface 和 type 的區(qū)別

這篇具有很好參考價(jià)值的文章主要介紹了TypeScript中 interface 和 type 的區(qū)別。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

區(qū)別1

  • 使用 interface 和 type 都是表示給定數(shù)據(jù)結(jié)構(gòu)的常用方法。
  • 定義的方式略有不同。
  • type 定義的時(shí)候有 “=” 符號(hào)
interface User {
	name: string,
	age: number
}
type User = {
	name: string,
	age: number
}

區(qū)別2

  • interface 可以多次聲明同一接口。它們將合并在一起形成一個(gè)接口定義。
  • type 只能聲明一次。

interface:可以多次聲明,并最終可共同復(fù)用;

interface User{
	name: string
}
interface User{
	age: number
}
let Person: User = {
	name: 'myName',
	age: 100
}

type:再次聲明會(huì)報(bào)錯(cuò)

type User = {
	name: string
}
type User = {  // 報(bào)錯(cuò),Throw error: Duplicate identifier
	age: number
}

區(qū)別3

  • 繼承方式的不同,interface通過(guò)extend方式繼承,type通過(guò) & 符號(hào)繼承;

interface

interface PointX {
    x: number
}
interface Point extends PointX {
    y: number
}

type

type PointX = {
    x: number
}
type Point = PointX & {
    y: number
}

interface 和 type 可以相互拓展

interface

type PointX = {
    x: number
}
interface Point extends PointX {
    y: number
}

type

interface PointX {
    x: number
}
type Point = PointX & {
    y: number
}

注意:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-627506.html

  1. 如果希望定義一個(gè)變量類(lèi)型,就用 type,如果希望能夠繼承并約束,就用 interface。
  2. 如果您是庫(kù)的作者或?yàn)橥獠繋?kù)創(chuàng)建類(lèi)型定義,請(qǐng)使用 interface。方便其他人也可以擴(kuò)展它們。
  3. 如果你不知道該用哪個(gè),建議使用 type。

到了這里,關(guān)于TypeScript中 interface 和 type 的區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶(hù)投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【TypeScript】TS中type和interface在類(lèi)型聲明時(shí)的區(qū)別

    【TypeScript】TS中type和interface在類(lèi)型聲明時(shí)的區(qū)別

    ?? 個(gè)人主頁(yè): 不叫貓先生 ???♂? 作者簡(jiǎn)介:2022年度博客之星前端領(lǐng)域TOP 2,前端領(lǐng)域優(yōu)質(zhì)作者、阿里云專(zhuān)家博主,專(zhuān)注于前端各領(lǐng)域技術(shù),共同學(xué)習(xí)共同進(jìn)步,一起加油呀! ??優(yōu)質(zhì)專(zhuān)欄: vue3+vite+typeScript從入門(mén)到實(shí)踐 ?? 資料領(lǐng)?。呵岸诉M(jìn)階資料可以找我免費(fèi)領(lǐng)取 ??

    2023年04月26日
    瀏覽(25)
  • TypeScript的interface

    目錄 一、基本使用 二、interface重名、重合 三、任意key 四、interface的? 五、interface的readonly 六、interfacec的接口繼承 七、interface定義函數(shù) 總結(jié): 變量a這個(gè)對(duì)象必須有name和age這兩個(gè)屬性,并且他們的類(lèi)型分別是string和number, 這都相當(dāng)與給變量a聲明了一個(gè)指定的類(lèi)型A ?總結(jié):

    2024年02月09日
    瀏覽(22)
  • Typescript 之接口 interface(詳解)

    TS新增了一個(gè)重要概念:接口, 分為對(duì)象類(lèi)型接口和函數(shù)類(lèi)型接口 接口可以約束對(duì)象,函數(shù),類(lèi)的結(jié)構(gòu)和類(lèi)型,是一種代碼協(xié)作必須遵守的契約 Interface 是一種描述對(duì)象或函數(shù)的東西。你可以把它理解為形狀,一個(gè)對(duì)象需要有什么樣的屬性,函數(shù)需要什么參數(shù)或返回什么樣的值,數(shù)

    2024年02月10日
    瀏覽(27)
  • 【TypeScript】接口類(lèi)型 Interfaces 的使用理解

    【TypeScript】接口類(lèi)型 Interfaces 的使用理解

    導(dǎo)語(yǔ) : 什么是 類(lèi)型接口 ? 在面向?qū)ο笳Z(yǔ)言中 ,接口 (Interfaces) 是一個(gè)很重要的概念,它是對(duì)行為的抽象,而具體如何行動(dòng)需要由類(lèi)(classes)去實(shí)現(xiàn)(implement)。TypeScript 中的 類(lèi)型接口 是一個(gè)非常靈活的概念,除了可用于 對(duì)類(lèi)的一部分行為進(jìn)行抽象 以外,也常用于對(duì)「

    2024年02月15日
    瀏覽(23)
  • TypeScript--接口interface的定義,實(shí)現(xiàn),繼承

    TypeScript--接口interface的定義,實(shí)現(xiàn),繼承

    可瀏覽博客主頁(yè)的 TypeScript 專(zhuān)欄,會(huì)陸續(xù)添加相關(guān)文章,有問(wèn)題或者可以?xún)?yōu)化的地方也希望大大門(mén)告知 共同進(jìn)步 :) ts版本 Version 4.8.4 TypeScript的核心原則之一是對(duì)值所具有的結(jié)構(gòu)進(jìn)行類(lèi)型檢查。 它有時(shí)被稱(chēng)做“鴨式辨型法”或“結(jié)構(gòu)性子類(lèi)型化”。 在TypeScript里,接口的作

    2023年04月12日
    瀏覽(29)
  • 【TypeScript】TS接口interface類(lèi)型(三)

    【TypeScript】TS接口interface類(lèi)型(三)

    一、前言 TypeScript的核心原則之一是對(duì)值所具有的結(jié)構(gòu)進(jìn)行類(lèi)型檢查。 它有時(shí)被稱(chēng)做“鴨式辨型法”或“結(jié)構(gòu)性子類(lèi)型化”。 在TypeScript里,接口的作用就是為這些類(lèi)型命名和為你的代碼或第三方代碼定義契約。這些方法都應(yīng)該是抽象的,需要由具體的類(lèi)去實(shí)現(xiàn),然后第三方

    2024年02月14日
    瀏覽(31)
  • 【鴻蒙系統(tǒng)學(xué)習(xí)筆記】TypeScript開(kāi)發(fā)語(yǔ)言

    【鴻蒙系統(tǒng)學(xué)習(xí)筆記】TypeScript開(kāi)發(fā)語(yǔ)言

    HarmonyOS 應(yīng)用的主要開(kāi)發(fā)語(yǔ)言是 ArkTS,它由 TypeScript(簡(jiǎn)稱(chēng)TS)擴(kuò)展而來(lái),在繼承TypeScript語(yǔ)法的基礎(chǔ)上進(jìn)行了一系列優(yōu)化,使開(kāi)發(fā)者能夠以更簡(jiǎn)潔、更自然的方式開(kāi)發(fā)應(yīng)用。值得注意的是,TypeScript 本身也是由另一門(mén)語(yǔ)言 JavaScript 擴(kuò)展而來(lái)。因此三者的關(guān)系如下圖所示 2.1.1、線

    2024年02月19日
    瀏覽(25)
  • TypeScript 中【class類(lèi)】與 【 接口 Interfaces】的聯(lián)合搭配使用解讀

    TypeScript 中【class類(lèi)】與 【 接口 Interfaces】的聯(lián)合搭配使用解讀

    導(dǎo)讀 : 前面章節(jié),我們講到過(guò) 接口(Interface)可以用于對(duì)「對(duì)象的形狀(Shape)」進(jìn)行描述。 本章節(jié)主要介紹接口的另一個(gè)用途,對(duì)類(lèi)的一 部分行為進(jìn)行抽象。 類(lèi)配合實(shí)現(xiàn)接口 實(shí)現(xiàn)( implements )是面向?qū)ο笾械囊粋€(gè)重要概念。 一般來(lái)講,一個(gè)類(lèi)只能繼承自另一個(gè)類(lèi) ,但

    2024年02月14日
    瀏覽(19)
  • 【HarmonyOS北向開(kāi)發(fā)】-03 ArkTS開(kāi)發(fā)語(yǔ)言-TypeScript快速入門(mén)
  • TypeScript——類(lèi)型別名(type)

    type ,用來(lái)給一個(gè)類(lèi)型起個(gè)新名字 定義類(lèi)型別名 定義聯(lián)合類(lèi)型別名 interface與類(lèi)型別名 兩者可以被繼承 interface 繼承 interface interface 繼承 type type 繼承 type type 繼承 interface interface的繼承通過(guò)extends, type 通過(guò) 交叉類(lèi)型合并 聲明合并 如果你多次聲明一個(gè)同名的接口,Typ

    2024年02月11日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包