0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙TypeScript開發(fā)入門學(xué)習(xí)第3天:【TS基礎(chǔ)類型】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-03-28 15:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、TypeScript 基礎(chǔ)類型

TypeScript 包含的數(shù)據(jù)類型如下表:

image.png

image.png

注意: TypeScript 和 JavaScript 沒有整數(shù)類型。

2、Any 類型

任意值是 TypeScript 針對編程時類型不明確的變量使用的一種數(shù)據(jù)類型,它常用于以下三種情況。

1、變量的值會動態(tài)改變時,比如來自用戶的輸入,任意值類型可以讓這些變量跳過編譯階段的類型檢查,示例代碼如下:

let x: any = 1;    // 數(shù)字類型
x = 'I am who I am';    // 字符串類型
x = false;    // 布爾類型

改寫現(xiàn)有代碼時,任意值允許在編譯時可選擇地包含或移除類型檢查,示例代碼如下:

let x: any = 4;
x.ifItExists();    // 正確,ifItExists方法在運行時可能存在,但這里并不會檢查
x.toFixed();    // 正確

定義存儲各種類型數(shù)據(jù)的數(shù)組時,示例代碼如下:

let arrayList: any[] = [1, false, 'fine'];
arrayList[1] = 100;

3、Null 和 Undefined

null

在 JavaScript 中 null 表示 "什么都沒有"。

null是一個只有一個值的特殊類型。表示一個空對象引用。

用 typeof 檢測 null 返回是 object。

undefined

在 JavaScript 中, undefined 是一個沒有設(shè)置值的變量。

typeof 一個沒有值的變量會返回 undefined。

Null 和 Undefined 是其他任何類型(包括 void)的子類型,可以賦值給其它類型,如數(shù)字類型,此時,賦值后的類型會變成 null 或 undefined。而在TypeScript中啟用嚴(yán)格的空校驗(--strictNullChecks)特性,就可以使得null 和 undefined 只能被賦值給 void 或本身對應(yīng)的類型,示例代碼如下:

// 啟用 --strictNullChecks
let x: number;
x = 1; // 編譯正確
x = undefined;    // 編譯錯誤
x = null;    // 編譯錯誤復(fù)制復(fù)制

上面的例子中變量 x 只能是數(shù)字類型。如果一個類型可能出現(xiàn) null 或 undefined, 可以用 | 來支持多種類型,示例代碼如下:

// 啟用 --strictNullChecks
let x: number | null | undefined;
x = 1; // 編譯正確
x = undefined;    // 編譯正確
x = null;    // 編譯正確
鴻蒙OS開發(fā)更多內(nèi)容↓點擊HarmonyOSOpenHarmony技術(shù)
鴻蒙技術(shù)文檔開發(fā)知識更新庫gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md在這。或+mau123789學(xué)習(xí),是v喔

搜狗高速瀏覽器截圖20240326151547.png

4、never 類型

never 是其它類型(包括 null 和 undefined)的子類型,代表從不會出現(xiàn)的值。這意味著聲明為 never 類型的變量只能被 never 類型所賦值,在函數(shù)中它通常表現(xiàn)為拋出異?;驘o法執(zhí)行到終止點(例如無限循環(huán)),示例代碼如下:

let x: never;
let y: number;

// 編譯錯誤,數(shù)字類型不能轉(zhuǎn)為 never 類型
x = 123;

// 運行正確,never 類型可以賦值給 never類型
x = (()= >{ throw new Error('exception')})();

// 運行正確,never 類型可以賦值給 數(shù)字類型
y = (()= >{ throw new Error('exception')})();

// 返回值為 never 的函數(shù)可以是拋出異常的情況
function error(message: string): never {
    throw new Error(message);
}

// 返回值為 never 的函數(shù)可以是無法被執(zhí)行到的終止點的情況
function loop(): never {
    while (true) {}
}

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • HarmonyOS
    +關(guān)注

    關(guān)注

    80

    文章

    2143

    瀏覽量

    32640
  • OpenHarmony
    +關(guān)注

    關(guān)注

    29

    文章

    3847

    瀏覽量

    18415
  • 鴻蒙OS
    +關(guān)注

    關(guān)注

    0

    文章

    191

    瀏覽量

    4950
收藏 0人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    鴻蒙北向開發(fā)OpenHarmony5.0 DevEco Studio開發(fā)工具安裝與配置

    本文介紹OpenHarmony5.0 DevEco Studio開發(fā)工具安裝與配置,鴻蒙北向開發(fā)入門必備!由觸覺智能Purple Pi OH鴻蒙
    的頭像 發(fā)表于 03-28 18:05 ?771次閱讀
    <b class='flag-5'>鴻蒙</b>北向<b class='flag-5'>開發(fā)</b>OpenHarmony5.0 DevEco Studio<b class='flag-5'>開發(fā)</b>工具安裝與配置

    【「極速探索HarmonyOS NEXT 」閱讀體驗】 初印象:一本純血鴻蒙應(yīng)用開發(fā)入門的好書

    的整體內(nèi)容有了一個比較清晰的認(rèn)識。它不僅對于初學(xué)者是一本易于入門的好書,對于常開發(fā)鴻蒙應(yīng)用的工作者也是一本可以日常翻閱的好手冊。 清晰的文章描述,資料的詳細(xì)可查,極大的激發(fā)了我極大的學(xué)習(xí)
    發(fā)表于 03-04 12:41

    HarmonyOS 應(yīng)用開發(fā)賦能套件:鴻蒙原生應(yīng)用開發(fā)的 “神助攻”

    隨著鴻蒙生態(tài)的快速發(fā)展,越來越多的開發(fā)者投身于鴻蒙原生應(yīng)用的開發(fā)中。然而,在學(xué)習(xí)鴻蒙原生應(yīng)用
    發(fā)表于 02-17 16:37

    鴻蒙北向開發(fā)OpenHarmony4.1 DevEco Studio開發(fā)工具安裝與配置

    OpenHarmony4.1 DevEco Studio開發(fā)工具安裝與配置,鴻蒙北向開發(fā)入門必備!
    的頭像 發(fā)表于 02-07 17:35 ?751次閱讀
    <b class='flag-5'>鴻蒙</b>北向<b class='flag-5'>開發(fā)</b>OpenHarmony4.1 DevEco Studio<b class='flag-5'>開發(fā)</b>工具安裝與配置

    #新年新氣象,大家新年快樂!#AIGC入門鴻蒙入門

    、配置SDK等。 3. 開發(fā)實踐**: 學(xué)習(xí)鴻蒙系統(tǒng)的架構(gòu)和API,了解其組件化、分布式等特性。 通過官方文檔和社區(qū)資源,學(xué)習(xí)和掌握
    發(fā)表于 01-13 10:46

    AIGC入門鴻蒙入門

    JDK、配置SDK等。 3. 開發(fā)實踐: 學(xué)習(xí)鴻蒙系統(tǒng)的架構(gòu)和API,了解其組件化、分布式等特性。 通過官方文檔和社區(qū)資源,學(xué)習(xí)和掌握
    發(fā)表于 01-13 10:32

    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566鴻蒙開發(fā)板演示

    本文介紹瑞芯微主板/開發(fā)板編譯OpenHarmony源碼后燒錄鏡像的教程,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示。搭載了瑞芯微RK3566四核處理器,樹莓派卡片電腦設(shè)計,支持開源鴻蒙
    的頭像 發(fā)表于 12-30 10:08 ?784次閱讀
    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>板演示

    OpenHarmony怎么修改DPI密度值?觸覺智能RK3566鴻蒙開發(fā)板演示

    開源鴻蒙OpenHarmony系統(tǒng)下,修改DPI密度值的方法,觸覺智能Purple Pi OH鴻蒙開發(fā)板演示,搭載了瑞芯微RK3566四核處理器,Laval鴻蒙社區(qū)推薦
    的頭像 發(fā)表于 12-24 11:46 ?683次閱讀
    OpenHarmony怎么修改DPI密度值?觸覺智能RK3566<b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b>板演示

    鴻蒙Flutter實戰(zhàn):07混合開發(fā)

    # 鴻蒙Flutter實戰(zhàn):混合開發(fā) 鴻蒙Flutter混合開發(fā)主要有兩種形式。 ## 1.基于har 將flutter module打包成har包,在原生
    發(fā)表于 10-23 16:00

    HarmonyOS Next原生應(yīng)用開發(fā)-從TS到ArkTS的適配規(guī)則(十五)

    拋出Error類或其派生類的實例。禁止拋出其他類型(例如number或string)的數(shù)據(jù)。TypeScript throw 4; throw \'\'; throw new Error
    發(fā)表于 08-19 16:13

    HarmonyOS Next原生應(yīng)用開發(fā)-從TS到ArkTS的適配規(guī)則(十四)

    ; 不支持在catch語句標(biāo)注類型 規(guī)則:arkts-no-types-in-catch 級別:錯誤 在TypeScript的catch語句中,只能標(biāo)注any或unknown類型。由于ArkTS不支持這些
    發(fā)表于 08-16 10:20

    HarmonyOS Next原生應(yīng)用開發(fā)-從TS到ArkTS的適配規(guī)則(十三)

    一、部分支持instanceof運算符 規(guī)則:arkts-instanceof-ref-types 級別:錯誤 在TypeScript中,instanceof運算符的左操作數(shù)的類型必須為any類型
    發(fā)表于 08-12 09:42

    HarmonyOS Next原生應(yīng)用開發(fā)-從TS到ArkTS的適配規(guī)則(十一)

    () as Square; console.log(c3.y); // undefined // 在TS中,由于`as`關(guān)鍵字不會在運行時生效,所以`instanceof`的左操作數(shù)不會在運行時被裝箱成
    發(fā)表于 08-02 14:07

    HarmonyOS Next原生應(yīng)用開發(fā)-從TS到ArkTS的適配規(guī)則(九)

    級別:錯誤 ArkTS不支持使用對象字面量聲明類型,可以使用類或者接口聲明類型TypeScript let o: {x: number, y: number} = { x: 2, y:
    發(fā)表于 07-25 11:26

    鴻蒙OpenHarmony南向/北向快速開發(fā)教程-迅為RK3568開發(fā)

    4.1學(xué)習(xí)之旅了嗎?快來加入我們,一起探索鴻蒙4.1系統(tǒng)的無限魅力吧! 【北京迅為】OpenHarmony學(xué)習(xí)開發(fā)系列教程(1期 北向基礎(chǔ)
    發(fā)表于 07-23 10:44

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品