typescript函式簡單理解

2021-10-07 23:10:35 字數 1243 閱讀 2893

在typescript中的函式並不需要刻意去定義,比如我們實現乙個加法函式:

const add = (a:number, b:number) =>
這種方式沒有顯示的去定義乙個函式,但是typescript是可以檢測到的

typescript函式的顯式定義

在變數後面加冒號與型別的定義,括號裡的(a:number, b:number)為引數型別,而通過=> 來鏈結與返回值,最後則是返回值的型別。

const add:(a:number, b:number) => number = (a:number, b:number) => a +  b
函式的引數

const add (a:number, b?:number) => a + (b?b:0)
引數b有number與undefined兩種可能。

const add = (a:number, b= 0) => a + b
const add = (a:number ,...rest:number) => rest.reduce(((a,b)=>a + b ),a)
過載

過載(overloading) 是在乙個類裡面,方法名字相同,而引數不同。返回型別可以相同也可以不同。

每個過載的方法(或者建構函式)都必須有乙個獨一無二的引數型別列表。

// 過載

inte***ce direction

function assigned(all: number): direction

function assigned(topandbottom: number, leftandright: number): direction

function assigned(top: number, right: number, bottom: number, left: number): direction

function assigned (a: number, b?: number, c?: number, d?: number) else if (c === undefined && d === undefined)

return

}assigned(1)

assigned(1,2)

assigned(1,2,3)

assigned(1,2,3,4)

typescript基礎 函式

函式的輸入輸出要進行型別的定義,函式的引數一旦定義好以後,輸入多或者少都是會編譯報錯的,返回型別也必須跟定義的一致 1 function fun a string,b number number 2 這種寫法只對右側的匿名函式進行了型別定義,左側的funs只能通過型別推斷得出 const funs ...

Spring Cloud Eureka簡單理解

eureka服務治理基礎架構包括三個核心要素。1 服務註冊中心 eureka分為客戶端和服務端,eureka服務端提供服務註冊與發現的功能。2 服務提供者 提供服務的應用,spring boot應用或者遵循eureka通訊機制的應用。將應用自己註冊到eureka註冊中心,以供其它應用的發現。3 服務...

TypeScript 入門(二) 函式

一 函式定義 1 先看一下es5中定義函式 function fn 匿名函式 var fn1 function 2 在ts中定義函式 function fn string 匿名函式 var fn1 function string 二 函式的傳參 1 ts中函式的傳參 function show na...