亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
  • // void、undefined 與 never

    function printResult () : void {

    ????console.log("lalala");

    }

    console.log(printResult()); // 報錯


    function printResult () : undefined? {

    ????console.log("lalala");

    }

    console.log(printResult());?


    function throwError(message: string, errorCode: number) :never{

    ????throw {

    ????????message,

    ????????errorCode

    ????}

    }

    throwError("not found", 404);


    function whileLoop(): never {

    ?????while(true) {

    ????????console.log("hahah")

    ????}

    }

    查看全部
  • // any 和 unkonwn

    let randomValue: any = 666;

    randomValue = true;

    randomValue = "asdga";

    randomValue = {};

    randomValue(); // 報錯

    randomValue.toUpperCase();?// 報錯



    let randomValue: unknown= 666;

    randomValue = true;

    randomValue = "asdga";

    randomValue = {};


    if(typeof randomValue === 'function') {

    ????randomValue();?

    }


    if(typeof randomValue === 'string') {

    ????randomValue.toUpperCase();?// 報錯

    }

    查看全部
    0 采集 收起 來源:Any 與 unknow

    2022-03-10

  • // 枚舉類型 Enum

    enum Color {

    ????red,

    ????green,

    ????blue

    }


    let color = Color.blue;

    console.log(color);


    enum Color2 {

    ????red = 2,

    ????green = 10,

    ????blue = 1

    }


    enum Color3 {

    ????red = "red",

    ????green = "green",

    ????blue = 1

    }

    查看全部
    0 采集 收起 來源:枚舉類型 Enum

    2022-03-10

  • // 聯合(Union)與文獻[Literal]類型

    let union: string | number

    union = 2;

    union = "uuhkd";

    union = true; // 報錯


    let union2: number | string | boolean | string[];

    const merge = (n1:? number | string, n2: number | string, resultType: "as-number" | "as-string" ) => {

    ? ? if(resultType === "as-string" {

    ????????return n1.toString() + n2.toString();

    ????}


    ????if(typeof n1 === "string" || typeof n2 === "string")?

    ????????return n1.toString() + n2.toString();

    ????else?

    ????????return n1 + n2

    }


    let mergeNumber = merge(2, 5, "as-number");

    let mergeNumber = merge(2, 5, "as-string");

    let mergeString = merge("hello", "world", "as-string");


    // 字面量類型(literal)

    let union3: 0 | 1 | 2

    union3 = 1;

    查看全部
  • let list1: number[] = [1, 2, 3, 4, 5];?// number數組類型

    let list2: Array<number> = [1, 2, 3, 4, 5];?// 泛型

    let list3= [1, 2, 3, 4, 5];


    let list4 = [1, "dd"];

    let list5: any[] = [1, "dss", true];? // any數組類型


    // tuple? 固定長度、固定類型的array

    let person1: [number, string] = [1, "hhh"];?// 元組(特殊數組,固定長度,固定類型)

    查看全部
  • lite-server快速搭建本地服務器

    查看全部
  • 通過使用泛型,完美的保證代碼中類型的一致性

    let message = <T>(arr: T[]) => {

    ? ?return arr[arr.length -1]

    }

    const a1 =?message([1,2,3,4])

    const a2 = message(["1","2","3"])

    const a3 = message<string | number>(["a","b","c",4])


    let makeTuple = <T,Y>(x: T, y:Y) => [x, y]


    const v1 =?makeTuple(1, "one")

    const v2 =?makeTuple<number | string>(1, "one")

    查看全部
    0 采集 收起 來源:Generics 泛型

    2022-03-03

  • 類型適配(類型斷言)Type Assertions

    let message : any;

    message = 'abc';

    message.endsWith('c'); // 此時不會生效,雖然上面已經指定了字段為字符串,但是字段默認初始類型為any.


    let ddd = (<string>message).endsWith('c') // 類型斷言為string,此時可以調用字符串的方法了

    let ddd = (message as string).endsWith('c') // 類型斷言為string,此時可以調用字符串的方法了

    查看全部
  • 聯合類型(union)

    let union: string | number | boolean | string[] = 5

    let union: 0 | 1 | 2 //不僅聯合類型確定了,值也確定了


    字面量類型(literal)

    let literal : 1 || '2' || true || [1,2,3]

    查看全部
  • let array: Array<number> = [1,2,3] // 泛型

    let array: any[] = [1,2,3,'ddd',true] // any數組類型

    let array: number[] = [1,2,3] // number數組類型

    let person1: [number, string] = [1,'ddd'] // 元組(特殊數組,固定長度,固定類型)

    查看全部
  • http://img1.sycdn.imooc.com//622073110001271712260704.jpg

    課程大綱

    查看全部
    0 采集 收起 來源:課程大綱

    2022-03-03

  • 高級類型

    查看全部
  • 類型記錄

    查看全部
  • 11111

    查看全部
    0 采集 收起 來源:課程總結

    2022-02-24

  • 數組中只有0和1,每過1代,0旁邊只有1個1,當前0會變成1。每過1代,0旁邊有2個1,當前0還是0。 比如10001,經過1代,會變成11011,再過1代,還是11011 。 求一個數組經過M代以后的數組。函數定義是void f(int[] arr,int m) 。

    答案2022-01-08:

    x里有有限個0。 1x1,中間0,x中有2m個0變成1,最中間的0不會變成1。 1x,右0,x中有m個0變成1。 x1,左0,x中有m個0變成1。 時間復雜度:O(N)。 空間復雜度:O(1)。

    package?mainimport?"fmt"func?main()?{
    ????arr?:=?[]byte{0,?1,?0,?0,?0,?0,?0,?1,?0,?0,?0}
    ????f(arr,?2)
    ????fmt.Println(arr)
    }func?f(arr?[]byte,?m?int)?{????//找中間0
    ????oneIndexList?:=?make([]int,?0)????for?i,?a?:=?range?arr?{????????if?len(oneIndexList)?==?2?{
    ????????????oneIndexList?=?oneIndexList[1:]
    ????????}????????if?a?==?1?{
    ????????????oneIndexList?=?append(oneIndexList,?i)
    ????????}????????if?len(oneIndexList)?==?2?{????????????for?j?:=?oneIndexList[0]?+?1;?j?<=?oneIndexList[1]-1;?j++?{????????????????if?j-oneIndexList[0]?!=?oneIndexList[1]-j?&&
    ????????????????????(j-oneIndexList[0]?<=?m?||
    ????????????????????????oneIndexList[1]-j?<=?m)?{
    ????????????????????arr[j]?=?1
    ????????????????}
    ????????????}
    ????????}
    ????}
    查看全部
    0 采集 收起 來源:課程總結

    2022-02-24

舉報

0/150
提交
取消
課程須知
學習中需要用到這些工具: —visual studio code 代碼編輯器 —tsc TypeScript編譯器 —nodejs SDK 你需要有這些基礎: —可以使用原生JavaScript,有es6的基礎知識更佳
老師告訴你能學到什么?
1、學習TypeScript基礎知識 2、了解Typescriptg工作流程以及編譯原理 3、掌握TypeScript開發配置以及各種常用工具 4、掌握前端靜態類型思想 5、深入了解前端面對對象概念

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!