javascript - 如果未找到,则 JS 中的条件链接为 false
问题描述
在 JS 的可选链中(我认为它没有在当前版本中实现),如果找不到,我可以让它评估为 false 吗?
var obj = {a: {foo: "bar"}}
console.log(obj.a?.foo); //bar
console.log(obj.b?.foo); //this is undefined, I want it to be false
我在 ES6/2015 中阅读了 JavaScript 中的 Optional Chaining和Null-safe 属性访问(和条件赋值),但都没有回答我的问题。
解决方案
您可以使用!!
or != null
(注意 != not !== 来检查 undefined 和 null)
var obj = {a: {foo: "bar"}};
console.log(!!obj.b?.foo);
console.log(obj.b?.foo != null);
推荐阅读
- python - 使用正则表达式两次
- javascript - Reactjs - 无法修改输入
- elasticsearch - Elasticsearch:最大虚拟内存区域 vm.max_map_count [65530] 太低,增加到至少 [262144]
- mysql - MySql外键错误1452及数据库结构
- java - Springboot服务通信
- python - 基于keras stateful LSTM的信号分类
- uwp - 使用 LaunchUriAsync 启动的 UWP 应用程序未显示主页
- python - 将 CSV 从写入一列更改为多列
- git - git 依赖图无法解析;发现了这些相互矛盾的要求: 依赖关系:如何避免?
- html - 如何让我的导航栏加载到元素动画之上