日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TypeScript基础入门 - 函数 - 简介

發(fā)布時間:2025/4/16 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TypeScript基础入门 - 函数 - 简介 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

轉(zhuǎn)載

TypeScript基礎(chǔ)入門 - 函數(shù) - 簡介

項目實踐倉庫

https://github.com/durban89/typescript_demo.git tag: 1.1.6

為了保證后面的學習演示需要安裝下ts-node,這樣后面的每個操作都能直接運行看到輸出的結(jié)果。

npm install -D ts-node

后面自己在練習的時候可以這樣使用

npx ts-node 腳本路徑

函數(shù)

介紹

函數(shù)是JavaScript應用程序的基礎(chǔ)。 它幫助你實現(xiàn)抽象層,模擬類,信息隱藏和模塊。 在TypeScript里,雖然已經(jīng)支持類,命名空間和模塊,但函數(shù)仍然是主要的定義 行為的地方。 TypeScript為JavaScript函數(shù)添加了額外的功能,讓我們可以更容易地使用。說實話我都不想看這塊的東西,函數(shù)嘛是個寫程序的都會寫,但是為了追求整體及探索新的知識,沒準有意外發(fā)現(xiàn),還是要學習下。

函數(shù)

和JavaScript一樣,TypeScript函數(shù)可以創(chuàng)建有名字的函數(shù)和匿名函數(shù)。 你可以隨意選擇適合應用程序的方式,不論是定義一系列API函數(shù)還是只使用一次的函數(shù)。通過下面的例子可以迅速回想起這兩種JavaScript中的函數(shù):

function add(x, y) {return x + y }let addFunc = function(x, y) { return x + y }


在JavaScript里,函數(shù)可以使用函數(shù)體外部的變量。 當函數(shù)這么做時,我們說它‘捕獲’了這些變量。?
至于為什么可以這樣做以及其中的利弊超出了本文的范圍,但是深刻理解這個機制對學習JavaScript和TypeScript會很有幫助。

let z = 10; function addTo(x, y) {return x + y + z; }

函數(shù)類型

為函數(shù)定義類型
讓我們?yōu)樯厦婺莻€函數(shù)添加類型

function add(x: number, y:number): number {return x + y; }let addFunc = function (x: number, y: number): number { return x + y }

我們可以給每個參數(shù)添加類型之后再為函數(shù)本身添加返回值類型。 TypeScript能夠根據(jù)返回語句自動推斷出返回值類型,因此我們通常省略它。

書寫完整函數(shù)類型

現(xiàn)在我們已經(jīng)為函數(shù)指定了類型,下面讓我們寫出函數(shù)的完整類型。

let addFunc: (x: number, y:number) => number = function(x: number, y: number): number { return x + y }

函數(shù)類型包含兩部分:參數(shù)類型和返回值類型。 當寫出完整函數(shù)類型的時候,這兩部分都是需要的。 我們以參數(shù)列表的形式寫出參數(shù)類型,為每個參數(shù)指定一個名字和類型。 這個名字只是為了增加可讀性。 我們也可以這么寫

let addFunc: (baseValue: number, increment: number) => number = function (x: number, y: number): number { return x + y }

只要參數(shù)類型是匹配的,那么就認為它是有效的函數(shù)類型,而不在乎參數(shù)名是否正確。

第二部分是返回值類型。 對于返回值,我們在函數(shù)和返回值類型之前使用( =>)符號,使之清晰明了。 如之前提到的,返回值類型是函數(shù)類型的必要部分,如果函數(shù)沒有返回任何值,你也必須指定返回值類型為 void而不能留空。

函數(shù)的類型只是由參數(shù)類型和返回值組成的。 函數(shù)中使用的捕獲變量不會體現(xiàn)在類型里。 實際上,這些變量是函數(shù)的隱藏狀態(tài)并不是組成API的一部分。


推斷類型

嘗試這個例子的時候,你會發(fā)現(xiàn)如果你在賦值語句的一邊指定了類型但是另一邊沒有類型的話,TypeScript編譯器會自動識別出類型:

let addFunc = function(x: number, y: number): number { return x + y } let addFunc: (baseValue: number, increment: number) => number = function(x, y) { return ?x + y }


這叫做“按上下文歸類”,是類型推論的一種。 它幫助我們更好地為程序指定類型。

本實例結(jié)束實踐項目地址

https://github.com/durban89/typescript_demo.git tag: 1.2.0

轉(zhuǎn)載于:https://my.oschina.net/zhangdapeng89/blog/1928605

總結(jié)

以上是生活随笔為你收集整理的TypeScript基础入门 - 函数 - 简介的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。