当前位置:首页 > 每日看点 > 正文内容

不用as和any的TypeScript有多可怕?

卡卷网1年前 (2025-01-11)每日看点257

<>为什么要放弃"万能药"?</>

A:TypeScript好难用啊!:啥难用的,加个any不就完了?TypeScript:那我走?

使用any和as,就像在写代码时戴上了"双色墨镜":

any,把所有类型都看成红色。as,把所有类型都强行染成绿色。

但是,当你摘下这副墨镜...

<>WelcometoTheRealWorld!</>

//以前我们这么写constdata:any=fetchData();constuser=data.userasUser;

//现在必须面对现实inteceApiResponse<T>{code:numer;data:T;message:string;}inteceUser{id:numer;name:string;age:numer;}asyncfunctionfetchUser():Promise<ApiResponse<User>>{//啊,类型地狱开始了...constresponse=awaitfetch('/api/user');constjson=awaitresponse.json();

//类型守卫,不得不写if(!isApiResponse<User>(json)){thrownewError('Invalidresponseformat');}retnjson;}

//类型守卫函数functionisApiResponse<T>(value:unknown):valueisApiResponse<T>{retn(typeofvalue==='oject'&&value!==null&&'code'invalue&&'data'invalue&&'message'invalue);}

<>"痛并快乐着"的好处</>

<>代码更可,</>编译时就能发现大量潜在问题,重构时更有信心,代码即文档。

<>团队协作更顺畅,</>接口定义清晰,类型即契约,减少沟通成本。

<>开发体验更好,</>IDE提示更准确,自动补全更智能,重构工具更强大。


<>最后最后</>

TypeScript的类型是你的朋友,不是敌人。它看起来严格,是因为它在保护你免受ug的困扰。就像不让你吃太多糖,不是为了让你不开心,而是在为你的健康着想。

正所谓:"宁可编译时报错,不要运行时崩溃。类型虽繁琐,但求心安理得。"

觉得有用就点个赞吧!我是旷野,探索无尽技术!

(如果你觉得不用as和any太痛苦,别担心,这是每个TypeScript开发者都要经历的"成长之痛"。熬过去就海阔天空了!)

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/8697.html

分享给朋友:

相关文章

电脑c盘哪些文件可以删除?

电脑c盘哪些文件可以删除?

电脑上的文件夹都是英文,很多朋友都不敢乱删,下面这几个文件夹里的文件,你可以放心删除。一、可删除的文件1、Backup这是一个备份文件夹,很多装机软件经常会把需要备份的东西,放在这个文件夹中。而当我们需要的软件正常保存之后,这些东西也就没有...

需要做一个微信小程序项目,大公司价格太高怎么办?

需要做一个微信小程序项目,大公司价格太高怎么办?

一个小程序制作开发多少钱构建一个微信小程序大概需要花费多少资金? 一、自主开发如果选择自主开发,这里面门道可不少。微信小程序认证费用: 300 /年域名费用: 30 - 80 /年服务器费用: 600 - 3000 /年这么一算,扣除人力成...

推荐几个问卷调查平台?

推荐几个问卷调查平台?

我给大家免费推荐一些市面上不多,且稳定的免费的问卷平台,这个在网上都是能够搜索到的,有的还是世界500钱企业,这里推荐的基本上都是上市的问卷公司了。上面都是可以免费去注册的,对外公开开放的,做完了直接奖励美刀的,不需要兑换卡什么的。Cint...

手机用久了,垃圾都在哪里,总是内存显示不够,还很卡,这可怎么解决?

手机用久了,垃圾都在哪里,总是内存显示不够,还很卡,这可怎么解决?

大家的手机在使用一段时间之后啊,是不是都会出现又卡又慢的情况,尤其是安卓手机,这种现象更是非常明显,而且很多朋友啊,也都知道手机之所以会出现这些问题,一般都是手机安装了大量软件,而这些软件在使用过程中会产生大量的缓存垃圾,因此啊时间久了就会...

MacOS真的比Windows流畅吗?

我现在公司配的机器,配置是绝对的大古董了惠普z230sff薄塔cpu只是个4770,没错不是4790k,4770全核睿频只有3.8g显卡更是古董,k600,已经结束驱动更新支持了,显存仅1g,跑分跑不过13代uhd核显内存是加到16g得,但...

PHP承载百万/天 访问量需要用到什么技术?

当年做一个百万PV的商城,也不过是两台2c4g的阿里云虚机罢了(其实一台就够,另外一台主要的逼着大家一定开发的时候一定要有负载均衡和横向扩容的意识)。当时框架还是Thinkphp3.2,框架提高运行效率的开关全打开,标准的lnmp模式,单机...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。