typeScript中的 ?: 问号冒号解释,ts可选参数

typeScript中的 ?: 问号冒号解释,ts可选参数

js 复制代码
function f(x: number, y?: number) {
 return x + (y || 0);
}
f(1, 2);
f(1);
f(1, undefined);
f(1, null); // error, 'null' is not assignable to 'number | undefined'

class C {
    a: number;
    b?: number;
}
let c = new C();
c.a = 12;
c.a = undefined; // error, 'undefined' is not assignable to 'number'
c.b = 13;
c.b = undefined; // ok
c.b = null; // error, 'null' is not assignable to 'number | undefined'

typeScript中的?:问号冒号表示此参数或属性可选,使用了 --strictNullChecks,可选参数或属性会被自动地加上 | undefined:

注意:1、不是三目运算符的问号冒号

2、可选参数必须放在所有参数的后面

3、可选参数不能赋默认值,因为默认参数其实就是可选参数的一种。

相关推荐
GIS之路19 小时前
GDAL 实现矢量裁剪
前端·python·信息可视化
是一个Bug19 小时前
后端开发者视角的前端开发面试题清单(50道)
前端
Amumu1213819 小时前
React面向组件编程
开发语言·前端·javascript
持续升级打怪中19 小时前
Vue3 中虚拟滚动与分页加载的实现原理与实践
前端·性能优化
GIS之路19 小时前
GDAL 实现矢量合并
前端
hxjhnct19 小时前
React useContext的缺陷
前端·react.js·前端框架
冰暮流星19 小时前
javascript逻辑运算符
开发语言·javascript·ecmascript
前端 贾公子20 小时前
从入门到实践:前端 Monorepo 工程化实战(4)
前端
菩提小狗20 小时前
Sqlmap双击运行脚本,双击直接打开。
前端·笔记·安全·web安全
前端工作日常20 小时前
我学习到的AG-UI的概念
前端