TypeScript笔记--基础

关于变量

 带类型的普通变量

let dec: number = 123;  //定义变量类型

  带数据类型的数组

let aList:number[] = [1,2,3];  //定义带类型的数组

 数组泛型

let blist: Array<number> = [1, 2, 3];  //数组泛型

 元组  元组赋值

let x: [string, number];  //元组
x = ["hello", 10];  //元组赋值
console.log(x[0]);

 枚举  获取枚举中的值   获取枚举index对应的名字

enum Color { Red = 2, Green = 1, Blue = 0 }  //枚举   //枚举手动赋值
let c: Color = Color.Green;   //获取枚举中名字的index
let b: Color = Color.Red;
console.log(c)  //1
console.log(b)  //0
let str: string = Color[2];  //获取枚举中的index的名字
console.log(str);  //Red

 动态类型 any   (变量的类型可以不明确定义)

let notSure: any = 4;   //any 动态类型
notSure = "123";
notSure = false;

关于函数

void 类型的函数  无返回值

function pp(): void {  //void 无返回值的函数
    console.log("456")
}
let uu: void = undefined;  //void类型的变量只能赋值 underfined 和null

never 类型的函数  永远不会到达终点的函数

function error(message: string): never {  //never类型表示那些不会到达终点的函数
    throw new Error(message)
}

关于类型断言

自己确定是这种数据类型

let someValue: any = "123456789";
let strLength: number = (<string>someValue).length;   //<string>类型断言 自己确定是这种数据类型
console.log(strLength)

let strLength2: number = (someValue as string).length;   //使用as也是类型断言

 关于解构

数组解构

let input = [1, 2, 3];  //数组解构
let [first, second] = input;
console.log(first);  //1

解构赋值

let [f] = [1, 2, 3, 4, 5];  //解构赋值
console.log(f);  //1

对象解构

let o = {
    aa: "foo",
    bb: 12,
    cc: "bar",
    dd: "11",
    ee: true
};
let { aa, bb } = o;   //对象解构
console.log(aa)

带指定类型的对象解构

let o = {
    aa: "foo",
    bb: 12,
    cc: "bar",
    dd: "11",
    ee: true
};
let { aa, bb }: { aa: string, bb: number } = o;  //带指定类型的对象解构
console.log(aa)

解构后属性重命名

let o = {
    aa: "foo",
    bb: 12,
    cc: "bar",
    dd: "11",
    ee: true
};

let { cc: newName1 } = o;//属性重命名
console.log(newName1)

关于展开

数组展开

let f1 = [1, 2];
let d1 = [3, 4];
let nnn = [0, ...f1, ...d1, 5];    //展开,数组展开
console.log(nnn)  //0,1,2,3,4,5

对象展开

let de = { food: "ss", price: "pp" };
let ded = { food: "aa", ...de };       //展开,对象的展开,对象展开会覆盖掉对象键相同的对象值
console.log(ded)  //{food:"ss",price:"pp"}

对象展开会覆盖掉对象键相同的对象值

let de = { food: "ss", price: "pp" };
let ded = { food: "aa", ...de };       //展开,对象的展开,对象展开会覆盖掉对象键相同的对象值
console.log(ded)  //{food:"ss",price:"pp"}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值