如何同时判断变量等于null和undefined的情况下,赋值0

例如,res?.data?.data === null ? 0 : res?.data?.data

当res?.data?.data === undefined时,如何修改判断条件让它值为undefined时 显示0

要修改条件判断,使得当res?.data?.datanullundefined时都返回0,您可以使用逻辑或操作符(||)来简化三元运算符。逻辑或操作符在nullundefined的情况下会返回第一个真值,否则返回其右侧的表达式。

下面是修改后的代码:

javascript 复制代码
const reporting = res?.data?.data === null || res?.data?.data === undefined ? 0 : res?.data?.data;

解释一下这段代码:

  • res?.data?.data === null || res?.data?.data === undefined:这部分检查res.data.data是否为nullundefined
  • 如果res.data.datanullundefined,条件为真,表达式返回0
  • 如果res.data.data不是null且不是undefined,条件为假,表达式返回res.data.data的值。

这样,无论res?.data?.datanull还是undefinedreporting都将是0。如果它是其他值,reporting将是那个值。

在Vue组件中,通常您会希望reporting是响应式的。因此,如果您在Vue 3的setup函数中,您应该使用ref来创建一个响应式变量:

javascript 复制代码
import { ref } from 'vue';

export default {
  setup() {
    // 假设res是从API响应或props中获取的
    const res = ref(null); // 请根据实际情况初始化

    // 使用ref创建响应式的reporting
    const reporting= ref(
      res.value?.data?.data === null || res.value?.data?.data === undefined ? 0 : res.value?.data?.data
    );

    // 返回包含icon和label的对象数组
    const reportingItem = ref([
      { icon: '', label: `报道: ${reporting.value}` }
    ]);

    return {
      reportingItem,
    };
  },
};

这样,reporting就是一个响应式的变量,它将根据res.data.data的值动态更新。如果res.data.data变为nullundefinedreporting将自动更新为0

相关推荐
lightqjx3 分钟前
【C++】unordered系列的封装
开发语言·c++·stl·unordered系列
m0_7190841111 分钟前
React笔记张天禹
前端·笔记·react.js
zh_xuan18 分钟前
kotlin lazy委托异常时执行流程
开发语言·kotlin
Ziky学习记录25 分钟前
从零到实战:React Router 学习与总结
前端·学习·react.js
wuhen_n31 分钟前
JavaScript链表与双向链表实现:理解数组与链表的差异
前端·javascript
wuhen_n34 分钟前
JavaScript数据结构深度解析:栈、队列与树的实现与应用
前端·javascript
阿猿收手吧!35 分钟前
【C++】string_view:高效字符串处理指南
开发语言·c++
我是一只puppy40 分钟前
使用AI进行代码审查
javascript·人工智能·git·安全·源代码管理
颜酱41 分钟前
从二叉树到衍生结构:5种高频树结构原理+解析
javascript·后端·算法
狗哥哥1 小时前
微前端路由设计方案 & 子应用管理保活
前端·架构