typescript-(基础类型,变量声明)

默认情况下null和undefined是所有类型的子类型。 就是说你可以把 null和undefined赋值给number类型的变量。
然而,当你指定了--strictNullChecks标记,null和undefined只能赋值给void和它们各自。 这能避免 很多常见的问题。 也许在某处你想传入一个 string或null或undefined,你可以使用联合类型string | null | undefined

类型断言

类型断言有两种形式。

// 尖括号语法
let someValue: any = "this is a string";
let strLength: number = (someValue).length;

// as 语法
let someValue: any = "this is a string";
let strLength: number = (someValue as string).length;

在TypeScript里使用JSX时,只有 as语法断言是被允许的

对象解构

const { a, b } = { a: "baz", b: 101,c:[1,2] }
console.log(a,b) // baz 101

// 创建剩余变量
const { a, ...c } = { a: "baz", b: 101, c: [1, 2] }
console.log(a,c)  // baz {b: 101, c: Array(2)}

// 属性重命名 ps:这里的冒号不是指示类型的 let {a, b}: {a: string, b: number} = { a: "baz", b: 101,c:[1,2] };
let { a: newName1, b: newName2 } = { a: "baz", b: 101,c:[1,2] };
console.log(newName1,newName2) // baz 101


你可能感兴趣的:(typescript-(基础类型,变量声明))