当前位置:首页 > 科技  > 知识百科

微软发布 TypeScript 5.6:完善空值合并和真值检查

来源: 责编: 时间:2024-09-10 09:28:46 280观看
导读 9 月 10 日消息,微软公司昨日(9 月 9 日)发布博文,宣布推出 TypeScript 5.6 正式版,主要进一步完善空值合并与真值检查,支持禁用类型检查等等。TypeScript 简介注:TypeScript 是一种在 JavaScript 基础上通过添加类

9 月 10 日消息,微软公司昨日(9 月 9 日)发布博文,宣布推出 TypeScript 5.6 正式版,主要进一步完善空值合并与真值检查,支持禁用类型检查等等。DVV28资讯网——每日最新资讯28at.com

TypeScript 简介

注:TypeScript 是一种在 JavaScript 基础上通过添加类型语法构建的语言。DVV28资讯网——每日最新资讯28at.com

类型(Types)用于描述开发者对变量、参数和函数的形态,而 TypeScript 类型检查器可以在开发者运行代码之前,帮助筛查诸如拼写错误、遗漏属性以及错误的函数调用等问题。DVV28资讯网——每日最新资讯28at.com

TypeScript 编辑器还引入了自动补全、代码导航和重构等功能,用户可以在 Visual Studio 和 VS Code 等编辑器中体验。DVV28资讯网——每日最新资讯28at.com

使用命令

用户可以通过以下命令使用 npm 开始使用 TypeScript:DVV28资讯网——每日最新资讯28at.com

npminstall-Dtypescript

或者可以通过 NuGet 方式获取。DVV28资讯网——每日最新资讯28at.com

新版变化

禁止使用空值合并(Nullish)与真值检查(Truthy Checks)DVV28资讯网——每日最新资讯28at.com

TypeScript 5.6 继续完善检查“可疑代码”,现在能够在发现表达式计算结果始终为 TRUE 时抛出错误,如正则表达式,函数表达式等:DVV28资讯网——每日最新资讯28at.com

if(/0x[0-9a-f]/){//~~~~~~~~~~~~//error:Thiskindofexpressionisalwaystruthy.}if(x=>0){//~~~~~~//error:Thiskindofexpressionisalwaystruthy.}functionisValid(value:string|number,options:any,strictness:"strict"|"loose"){if(strictness==="loose"){value=+value}returnvalue<options.max??100;//~~~~~~~~~~~~~~~~~~~//error:Rightoperandof??isunreachablebecausetheleftoperandisnevernullish.}if(isValid(primaryValue,"strict")||isValid(secondaryValue,"strict")||isValid(primaryValue,"loose"||isValid(secondaryValue,"loose"))){//~~~~~~~//error:Thiskindofexpressionisalwaystruthy.}

通过启用 ESLint 的 no-constant-binary-expression 规则,同样可以实现类似效果,你可以在他们的博客文章中看到部分成果。DVV28资讯网——每日最新资讯28at.com

然而,TypeScript 新增的检查与 ESLint 规则并非完全重叠,并且微软认为将这些检查内置于 TypeScript 本身具有很大价值。DVV28资讯网——每日最新资讯28at.com

Iterator Helper 方式DVV28资讯网——每日最新资讯28at.com

JavaScript 中存在可迭代对象(可以通过调用 [Symbol.iterator]() 来遍历的对象)和迭代器(具有 next () 方法的对象,我们可以调用该方法以在遍历过程中尝试获取下一个值)的概念。DVV28资讯网——每日最新资讯28at.com

Iterable 和 IterableIterator 在 JavaScript 中随处可见,但许多人反馈自己怀念 Array 上的方法,比如 map 、 filter ,出于某种原因还有 reduce 。DVV28资讯网——每日最新资讯28at.com

function*positiveIntegers(){leti=1;while(true){yieldi;i++;}}constevenNumbers=positiveIntegers()map(x=x*2)//Output//2//4//6//8//10for(constvalueofevenNumbers.take(5)){console.log(value)}

这就是为什么最近在 ECMAScript 中提出了一项提案,要将 Array 中的许多方法(及更多)添加到 JavaScript 中生成的大多数 IterableIterator 上。DVV28资讯网——每日最新资讯28at.com

DVV28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-119-112560-0.html微软发布 TypeScript 5.6:完善空值合并和真值检查

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 微软 Windows Server 26280 预览版发布,有效期调至 2025 年 9 月 15 日

下一篇: 中国联通 App 电话小程序开启预约:接入 WiFi 即可用、原生通话体验

标签:
  • 热门焦点
  • K60至尊版狂暴引擎2.0加持:超177万跑分斩获性能第一

    Redmi的后性能时代战略发布会今天下午如期举办,在本次发布会上,Redmi公布了多项关于和联发科的深度合作,以及新机K60 Ultra在软件和硬件方面的特性,例如:“K60 至尊版,双芯旗舰
  • Mate60手机壳曝光 致敬自己的经典设计

    8月3日消息,今天下午博主数码闲聊站带来了华为Mate60的第三方手机壳图,可以让我们在真机发布之前看看这款华为全新旗舰的大致轮廓。从曝光的图片看,Mate 60背后摄像头面积依然
  • 小米降噪蓝牙耳机Necklace分享:听一首歌 读懂一个故事

    在今天下午的小米Civi 2新品发布会上,小米还带来了一款新的降噪蓝牙耳机Necklace,我们也在发布结束的第一时间给大家带来这款耳机的简单分享。现在大家能见到最多的蓝牙耳机
  • Flowable工作流引擎的科普与实践

    一.引言当我们在日常工作和业务中需要进行各种审批流程时,可能会面临一系列技术和业务上的挑战。手动处理这些审批流程可能会导致开发成本的增加以及业务复杂度的上升。在这
  • 虚拟键盘 API 的妙用

    你是否在遇到过这样的问题:移动设备上有一个固定元素,当激活虚拟键盘时,该元素被隐藏在了键盘下方?多年来,这一直是 Web 上的默认行为,在本文中,我们将探讨这个问题、为什么会发生
  • 为什么你不应该使用Div作为可点击元素

    按钮是为任何网络应用程序提供交互性的最常见方式。但我们经常倾向于使用其他HTML元素,如 div span 等作为 clickable 元素。但通过这样做,我们错过了许多内置浏览器的功能。
  • 签约井川里予、何丹彤,单视频点赞近千万,MCN黑马永恒文希快速崛起!

    来源:视听观察永恒文希传媒作为一家MCN公司,说起它的名字来,可能大家会觉得有点儿陌生,但是说出来下面一串的名字之后,或许大家就会感到震惊,原来这么多网红,都签约这家公司了。根
  • 到手价3099元起!iQOO Neo8 Pro今日首销:安卓性能最强旗舰

    5月23日,iQOO如期举行了新品发布会,全新的iQOO Neo8系列也正式与大家见面,包含iQOO Neo8和iQOO Neo8 Pro两个版本,其中标准版搭载高通骁龙8+,而Pro版更
  • 北京:科技教育体验基地开始登记

      北京“科技馆之城”科技教育体验基地登记和认证工作日前启动。首批北京科技教育体验基地拟于2023年全国科普日期间挂牌,后续还将开展常态化登记。  北京科技教育体验基
Top