typescript 问号使用(??)(?.)

问号+点(?.)

对象不为空才调用对象的属性。如果对象为空则返回undefined。

复制代码
 res.data.mstrmod?.CreateTime

如果mstrmod为空,createTime得到一个undefine

以下的如果createTime得到undefine再调用replace是会报错 ,?.只能用来取值,不能再去调函数,否则还是有出问题的时候。

复制代码
res.data.mstrmod?.CreateTime?.replace('T', ' ')

2个问号(??)

判断变量是否为空,如果变量为空,用后面的默认值初始化对象。

const v1 = null

const v2 = 2

const v3 = v1 ?? 3

const v4 = v2 ?? 4

console.log("v3 = ", v3)

console.log("v4 = ", v4)

相关推荐
ZhengEnCi15 小时前
Hono 4 多库多模型服务的企业级 Monorepo 目录结构:npm workspaces 与 Turborepo 该怎么分层
typescript
深蓝AI17 小时前
Meta 开源用了八年的设计系统 astryx:连坐两天 GitHub 总榜第一,组件库开始写给 agent 的说明书
前端·人工智能
IT_陈寒18 小时前
Vue的watch把我坑惨了,原来要这样用才靠谱
前端·人工智能·后端
1-1=018 小时前
Vue 3 模板语
前端·javascript·vue.js
用户76103044737118 小时前
【转战智能眼镜开发】ROKID AIUI 小游戏 亚马逊标枪项目实战讲解
前端
风卿18 小时前
看着AI写代码太孤独了,来欣赏星云吧:一个DSH 装饰插件
前端·javascript
牧艺18 小时前
弹层不用再手算坐标了:CSS Anchor Positioning 从原理到可上线
前端·javascript·css
用户老李18 小时前
YOLO 目标检测自学教程 07:YOLOv3——多尺度预测
前端
moshuying19 小时前
ESP32 墨水屏金价牌(上):从点亮到把图片推过去
前端
李剑一19 小时前
别再抬杠,前端岗已经没了!无论前后端,我们最终都要成“全干”工程师
前端·面试