TypeScript

錯誤之處,歡迎指正。


1. 類型約束

  • numberstring、boolean
let num: number = 1;
let str: string = "123";
let bol: boolean = true;
num = str; // Error

let id: any = "123";
id = 1;
id = true;
console.log(id); // true
  • Array
const arr: Array<number> = [
  1, 2, 3
];
const arr2: Array<string> = [
  1
]; // Error
  • type
type a = 1;
const num: a = 1;
const num1: a = 2; // Error
const num2: a = "1"; // Error
  • interface
interface itemModel {
  name: string,
  age: number
};
const obj: itemModel = {
  name: "chris",
  age: 17
};
// 使用在函數(shù)參數(shù)中
interface obj {
  name: string,
  age: number
} ;
function foo({name, age}: obj) {};
foo({
  name: "chris",
  age: 17
});
// 對函數(shù)進行約束
interface foo {
  (num: number): number
};
let myFoo: foo = (a) => { return a + "" }; // Error
myFoo(1);
  • void
    表示函數(shù)的返回值為undefined。
function foo(): void {
  return true; // Error
};

2. 斷言

  • as
const app: HTMLElement = document.getElementById("root"); // Error

const app: HTMLElement = document.getElementById("root") as HTMLElement;
const app: HTMLElement | null = document.getElementById("root");
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容