日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

前端開發何必執著于Typescript?Jsdoc一樣很好用

來源: 責編: 時間:2023-08-09 23:02:18 403觀看
導讀為什么很多公司執著于typescript?因為typescript支持很多JS不支持的特性,正確的使用typescript,可以使你的代碼更易于維護。最主要的是可以給JS添加類型,使編輯器的提示更智能。但是,typescript是很復雜的一門語言,很多開發

R9428資訊網——每日最新資訊28at.com

為什么很多公司執著于typescript?因為typescript支持很多JS不支持的特性,正確的使用typescript,可以使你的代碼更易于維護。R9428資訊網——每日最新資訊28at.com

最主要的是可以給JS添加類型,使編輯器的提示更智能。R9428資訊網——每日最新資訊28at.com

但是,typescript是很復雜的一門語言,很多開發者并不能很好的運用typescript,甚至很多人是被迫的,他們內心是反感使用typescript的,導致代碼寫的亂七八糟。R9428資訊網——每日最新資訊28at.com

事實上,JS也有很多優勢是typescript所不具備的,比如:JS的靈活性很高。R9428資訊網——每日最新資訊28at.com

如果我告訴你,有一種工具,完全可以像寫typescript一樣寫JS,你會用嗎?R9428資訊網——每日最新資訊28at.com

我說的這個工具就是jsdoc,我們可以叫它JS文檔注釋。它的目的也是為JS添加類型的,只是以注釋的形式添加的,它有固定的語法。R9428資訊網——每日最新資訊28at.com

我就以項目中的代碼來舉例吧,大家看如下文檔注釋。其中,@template 用于聲明泛型類型,@typedef 用于定義一個類型。R9428資訊網——每日最新資訊28at.com

在這里,我們定義了一個泛型T和一個名叫TreeNode的類型。TreeNode包含2個確定的字段:id和children,剩下的字段由泛型T確定。R9428資訊網——每日最新資訊28at.com

/** * @template T * @typedef {T & {id: number, children: TreeNode<T>[]}} TreeNode */

下面,我們來測試一下這個類型。R9428資訊網——每日最新資訊28at.com

如下圖,我們聲明一個變量node,使用@type指定為TreeNode類型,尖括號中間的對象類型替代了我們定義中的泛型T。R9428資訊網——每日最新資訊28at.com

當我們鍵入點號后,編輯器給出了非常智能的提示。大家說,是不是很酷?R9428資訊網——每日最新資訊28at.com

R9428資訊網——每日最新資訊28at.com

這是真實項目中的代碼,一個生成ID的函數。R9428資訊網——每日最新資訊28at.com

使用@param可以為函數參數指定類型,在這里,我們為tree指定了TreeNode數組類型。使用@returns可以指定函數返回值的類型。R9428資訊網——每日最新資訊28at.com

/** * @param {TreeNode<{}>[]} tree * @returns {number} */export const genId = tree => {  return (function eachFn (data) {    return data.reduce((t, item) => {      return Math.max(        t,        item.id || 0,        item.children ? eachFn(item.children) : 0      )    }, 0)  })(tree) + 1}

如下圖,由于我們給tree指定了類型,當鍵入點號后,編輯器知道data是數組類型,正確地給出了數組的成員提示。這使我們在鍵入時,不易出錯。R9428資訊網——每日最新資訊28at.com

R9428資訊網——每日最新資訊28at.com

當我們鼠標指針移入函數名時,編輯器給出了該函數的提示。告訴我們,該函數接收一個TreeNode數組參數tree,返回數值類型結果。R9428資訊網——每日最新資訊28at.com

R9428資訊網——每日最新資訊28at.com

現在,大家覺得jsdoc怎么樣?是不是很好用?酷不酷?R9428資訊網——每日最新資訊28at.com

如果大家開發用的語言是JS,我建議大家學學jsdoc。jsdoc的用法遠比本文介紹的要多,它很強大,但語法卻很簡單易學。R9428資訊網——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-5116-0.html前端開發何必執著于Typescript?Jsdoc一樣很好用

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Rust采用率不斷提高,2022年度Rust調查報告出爐!

下一篇: Go1.21 那些事:泛型庫、for 語義變更、統一 log/slog、WASI 等新特性,你知道多少?

標簽:
  • 熱門焦點
  • 6月安卓手機好評榜:魅族20 Pro蟬聯冠軍

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數據來源安兔兔評測,收集時間2023年6月1日至6月30日,僅限國內市場。第一名:魅族20 Pro好評率:95%5月份的時候魅族20 Pro就是
  • iPhone賣不動了!蘋果股價創年內最大日跌幅:市值一夜蒸發萬億元

    8月5日消息,今天凌晨美股三大指數高開低走集體收跌,道指跌0.41%;納指跌0.36%;標普500指數跌0.52%。熱門科技股也都變化極大,其中蘋果報181.99美元,跌4.8%,創
  • 摸魚心法第一章——和配置文件說拜拜

    為了能摸魚我們團隊做了容器化,但是帶來的問題是服務配置文件很麻煩,然后大家在群里進行了“親切友好”的溝通圖片圖片圖片圖片對比就對比,簡單對比下獨立配置中心和k8s作為配
  • Automa-通過連接塊來自動化你的瀏覽器

    1、前言通過瀏覽器插件可實現自動化腳本的錄制與編寫,具有代表性的工具就是:Selenium IDE、Katalon Recorder,對于簡單的業務來說可快速實現自動化的上手工作。Selenium IDEKat
  • 量化指標是與非:挽救被量化指標扼殺的技術團隊

    作者 | 劉新翠整理 | 徐杰承本文整理自快狗打車技術總監劉新翠在WOT2023大會上的主題分享,更多精彩內容及現場PPT,請關注51CTO技術棧公眾號,發消息【WOT2023PPT】即可直接領取
  • 三萬字盤點 Spring 九大核心基礎功能

    大家好,我是三友~~今天來跟大家聊一聊Spring的9大核心基礎功能。話不多說,先上目錄:圖片友情提示,本文過長,建議收藏,嘿嘿嘿!一、資源管理資源管理是Spring的一個核心的基礎功能,不
  • 三分鐘白話RocketMQ系列—— 如何發送消息

    我們知道RocketMQ主要分為消息 生產、存儲(消息堆積)、消費 三大塊領域。那接下來,我們白話一下,RocketMQ是如何發送消息的,揭秘消息生產全過程。注意,如果白話中不小心提到相關代
  • iQOO 11S評測:行業唯一的200W標準版旗艦

    【Techweb評測】去年底,iQOO推出了“電競旗艦”iQOO 11系列,作為一款性能強機,該機不僅全球首發2K 144Hz E6全感屏,搭載了第二代驍龍8平臺及144Hz電競
  • 最薄的14英寸游戲筆記本電腦 Alienware X14已可以購買

    2022年1月份在國際消費電子展(CES2022)上首次亮相的Alienware新品——Alienware X14現在已經可以購買了,這款筆記本電腦被譽為世界上最薄的 14 英寸游戲筆
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
亚洲图片欧美一区| 好看不卡的中文字幕| 欧美激情精品久久久久久久变态| 欧美.com| 欧美日韩久久久久久| 亚洲综合二区| 一本到12不卡视频在线dvd| 在线一区二区三区做爰视频网站 | 一本色道久久综合亚洲91| 亚洲午夜精品| 久久精品天堂| 欧美另类视频在线| 国产乱理伦片在线观看夜一区| 国产尤物精品| 国产一区二区精品久久99| 亚洲国产欧美另类丝袜| 一本色道久久88精品综合| 亚洲高清不卡| 一本大道久久a久久综合婷婷| 欧美在线视频观看| 欧美人成在线视频| 国产一区二区在线观看免费| 99精品欧美一区| 久久久久99| 欧美午夜精品久久久久久浪潮| 国语对白精品一区二区| 国产综合色一区二区三区| 亚洲精品视频在线观看网站| 午夜精品亚洲一区二区三区嫩草| 亚洲国产高清高潮精品美女| a91a精品视频在线观看| 久久久久久午夜| 国产精品毛片a∨一区二区三区| 伊人精品久久久久7777| 亚洲一区欧美一区| 久久天天狠狠| 国产精品v欧美精品v日韩| 狠狠色丁香婷婷综合影院 | 一本大道久久精品懂色aⅴ| 性做久久久久久久久| 欧美电影在线免费观看网站| 免费黄网站欧美| 欧美性猛交xxxx乱大交蜜桃| 国模套图日韩精品一区二区| 99视频在线精品国自产拍免费观看| 欧美在线不卡视频| 欧美日韩一区在线| 久久婷婷久久| 欧美日韩在线另类| 国内精品久久国产| 亚洲午夜在线视频| 女女同性精品视频| 国产欧美一区二区三区沐欲| 亚洲精品一区二区三区四区高清 | 午夜一级久久| 欧美日韩另类国产亚洲欧美一级| 国产亚洲一区精品| 国产精品日本一区二区| 欧美午夜视频网站| 在线成人av网站| 午夜精品在线看| 欧美福利视频| 国内精品久久久久久久果冻传媒| 中日韩在线视频| 你懂的视频一区二区| 国产日韩欧美综合| 狠狠色狠狠色综合日日五| 一区二区三区福利| 欧美大片在线看| 国内精品免费在线观看| 亚洲欧美一区二区三区极速播放| 欧美伦理在线观看| 伊人夜夜躁av伊人久久| 亚洲欧美日韩国产综合| 久久先锋影音| 欧美日本成人| 亚洲成人在线网站| 久久精品国产亚洲5555| 欧美成熟视频| 在线观看免费视频综合| 欧美在线影院| 国产欧美一区二区三区久久| 一区免费在线| 欧美中文在线观看| 国产精品亚洲人在线观看| 亚洲美女精品成人在线视频| 久久av一区二区三区亚洲| 男人的天堂成人在线| 狠狠干综合网| 久久九九全国免费精品观看| 国产欧美日韩在线视频| 欧美亚洲一区| 国产欧美精品在线播放| 亚洲一区区二区| 欧美成人午夜77777| 在线观看亚洲视频啊啊啊啊| 久久久久久亚洲精品杨幂换脸 | 久久精品噜噜噜成人av农村| 国产精品v日韩精品v欧美精品网站| 国产一区二区久久精品| 欧美一区二区三区四区在线观看| 国产精品乱码妇女bbbb| 亚洲尤物视频网| 国产精品久久久亚洲一区| 亚洲免费视频观看| 国产精品日日做人人爱| 午夜久久黄色| 国产麻豆精品视频| 久久xxxx| 黄色成人片子| 欧美aⅴ一区二区三区视频| 尤妮丝一区二区裸体视频| 欧美高清视频在线播放| 99精品久久久| 国产精品乱码人人做人人爱 | 欧美成人综合一区| 亚洲精品免费在线播放| 欧美日韩一区高清| 午夜久久99| 国内免费精品永久在线视频| 久久一二三四| 欧美激情综合色| 99国产精品私拍| 国产精品毛片大码女人| 欧美一区二区三区视频在线| 韩国女主播一区二区三区| 模特精品裸拍一区| 夜夜狂射影院欧美极品| 国产精品免费网站| 久久久99免费视频| 亚洲国产毛片完整版 | 国产精品久久久久三级| 欧美在线看片| 亚洲国产一成人久久精品| 欧美精品一区二区在线观看| 亚洲午夜国产一区99re久久| 国产日韩精品一区二区浪潮av| 久久乐国产精品| 日韩视频一区| 国产精品影音先锋| 欧美国产日韩在线观看| 亚洲图中文字幕| 国产亚洲精品v| 欧美高清不卡| 亚洲欧美激情精品一区二区| 一区免费视频| 国产精品v日韩精品| 久久国产综合精品| 亚洲美女91| 国产午夜精品美女视频明星a级 | 一本色道久久88精品综合| 国产欧美一区二区精品婷婷| 免费成人毛片| 亚洲一区二区三区高清| 揄拍成人国产精品视频| 国产精品成人一区二区艾草| 久久偷窥视频| 亚洲夜晚福利在线观看| 国产伦精品一区二区三区| 免费中文日韩| 欧美一区二区三区免费视| 亚洲毛片在线看| 国产真实精品久久二三区| 欧美女主播在线| 久久精品一区二区三区四区| 国产女主播在线一区二区| 老色批av在线精品| 亚洲一级电影| 在线免费观看一区二区三区| 国产精品一区二区在线| 欧美成人日本| 久久精品亚洲精品国产欧美kt∨| 亚洲三级毛片| 国内精品久久久久久 | 国产精品av一区二区| 免费短视频成人日韩| 午夜在线精品偷拍| 9色国产精品| 亚洲夫妻自拍| 国产一区二区在线观看免费| 欧美日韩在线不卡| 免费成人高清| 久久激情综合| 亚洲欧洲一二三| 国产亚洲aⅴaaaaaa毛片| 欧美三区美女| 欧美大片在线看| 噜噜噜久久亚洲精品国产品小说| 先锋影音久久| 亚洲视频一二三| 亚洲精品美女久久7777777| 黄色成人av在线| 国产区在线观看成人精品| 欧美福利视频一区| 欧美成人黑人xx视频免费观看| 久久九九久精品国产免费直播| 亚洲欧美激情一区二区| av成人激情| 亚洲免费观看在线观看| 亚洲高清视频一区| 国产综合久久久久久鬼色| 国产精品永久入口久久久| 欧美视频一区在线| 欧美精品在线观看播放|