TS学习笔记(ts基础类型 类型别名)

中文文档网址  https://www.tslang.cn/docs/home.html

 

https://ts.xcatliu.com

与js不同的是  ts的变量都可以类型注解 : 后面注明变量类型

let isDone: boolean = false;

与js的类型相比多出的 比如枚举(个人理解 将对象数据化了 类似数组通过下角标得到值)

enum Color {Red, Green, Blue}
let c: Color = Color[0];
console.log(c)//Red

//也可以手动添加下角标

enum Color {Red = 1, Green, Blue}
let c: Color = Colorp[1];

//如果不手动添加的话  默认是从0开始的

any 可以是任何类型

let notSure: any = 4;
notSure = "maybe a string instead";
notSure = false; // okay, definitely a boolean

Void

某种程度上来说,void类型像是与any类型相反,它表示没有任何类型。 当一个函数没有返回值时,你通常会见到其返回值类型是 void

声明一个void类型的变量没有什么大用,因为你只能为它赋予undefinednull

Never

never类型表示的是那些永不存在的值的类型。 例如, never类型是那些总是会抛出异常或根本就不会有返回值的函数表达式或箭头函数表达式的返回值类型; 变量也可能是 never类型,当它们被永不为真的类型保护所约束时。

Object

object表示非原始类型,也就是除numberstringbooleansymbolnullundefined之外的类型。

使用object类型,就可以更好的表示像Object.create这样的API。例如:

declare function create(o: object | null): void; 

// declare 声明变量 interface 声明接口类似

//object 感觉和对象变量没有什么区别

create({ prop: 0 }); // OK
create(null); // OK

create(42); // Error
create("string"); // Error
create(false); // Error
create(undefined); // Error

类型断言 

明确告诉编译器这是一个什么类型的变量

let someValue: any = "this is a string";

let strLength: number = (someValue as string).length;

//<类型> 值
// 值 as 类型

变量声明

主要说了一些ES6的一些用法  除此之外

获取块级作用域变量的一种方法

function theCityThatAlwaysSleeps() {
    let getCity;

    if (true) {
        let city = "Seattle";
        getCity = function() {
            return city;
        }
    }

    return getCity();
}

解构的重命名

let o = {
    a: "foo",
    b: 12,
    c: "bar"
};
let { a, b } = o;

let { a: newName1, b: newName2 } = o;

//其实与下面是一样的 平时解构 变量a对应属性a  现在重命名了 将属性a复制给了变量newName1
let newName1 = o.a;
let newName2 = o.b;

类型别名

type (可以给一个类型定义一个名字)多用于符合类型

type aa=number
type name=string|number
let a:name=123
let b:aa=456
console.log(a)   //123
console.log(b)   //456

字符串字面量类型

字符串字面量类型用来约束取值只能是某几个字符串中的一个。

type name1="小红"|"小明"|"小李"
function conName(name:name1):void{
    console.log(name)
}
conName("小红")  //小红 如果是这三个字符串以外的 则报错

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值