如何同时判断变量等于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

相关推荐
海绵宝宝贾克斯儿24 分钟前
C++中如何实现一个单例模式?
开发语言·c++·单例模式
史迪仔011225 分钟前
[python] Python单例模式:__new__与线程安全解析
开发语言·python·单例模式
koiy.cc34 分钟前
记录:echarts实现tooltip的某个数据常显和恢复
前端·echarts
一只专注api接口开发的技术猿44 分钟前
企业级电商数据对接:1688 商品详情 API 接口开发与优化实践
大数据·前端·爬虫
GISer_Jing1 小时前
[前端高频]数组转树、数组扁平化、深拷贝、JSON.stringify&JSON.parse等手撕
前端·javascript·json
isyangli_blog1 小时前
(1-4)Java Object类、Final、注解、设计模式、抽象类、接口、内部类
java·开发语言
三块钱07941 小时前
【原创】基于视觉大模型gemma-3-4b实现短视频自动识别内容并生成解说文案
开发语言·python·音视频
易只轻松熊1 小时前
C++(20): 文件输入输出库 —— <fstream>
开发语言·c++·算法
古拉拉明亮之神1 小时前
Spark处理过程-转换算子
javascript·ajax·spark
芯眼1 小时前
ALIENTEK精英STM32F103开发板 实验0测试程序详解
开发语言·c++·stm32·单片机·嵌入式硬件·社交电子