关于undefined null NaN 在项目中有哪些应用?

目前项目中用到的最多的就是null

当使用的场景超出了两种 情况不能用三元表达式的时候 我就把变量初始定义成undefined或者是null 来代表初始化的情况

虽然用了好几次 但是对其理解还不够深入

关于null undefined NaN有哪些应用场景?

不要抄百度 说一些定义

请说出你的理解 或者在实际项目中的巧妙运用之处 谢谢

已解决 悬赏分:10 - 解决时间 2021-11-28 23:08
反对 0举报 0 收藏 0

回答3

最佳
  • @

    NaN 是给转number操作 失败的时候 给的一个特殊的值, isNaN 判断字符串能不能转number

    undefined 是js语言声明完了默认的一个初始化特殊值, 就是没有初始化或者方法没有返回值

    null 这个玩意儿在js语言里面相当多余,我觉得它就是当初抄其他语言的null抄出来的东西,实际应用的时候基本上都可以被undefined代替,我从来不主动使用null

    PS:用语意上面来说,很多场景下null的意思更好一些, 比如:主动的初始化 null, 方法找不到需要的返回值,返回一个null,这些都是。 但是你都用undefined代替,也可以,程序逻辑上没有差别。

    支持 0 反对 0 举报
    2021-11-28 08:17
  • @

    null我一般用来手动释放引用,等待下次GC回收;undefined和NaN用的不是很多。

    支持 0 反对 0 举报
    2021-11-28 09:53
  • @

    下面这个业务场景会用到。
    比如我有一个商品详情页,除了商品之外,还有促销数据。下面是促销数据的状态:

    • undefined <初始值> 此时还未将数据请求回来
    • null 该商品无促销活动
    • object 该商品有促销活动,object是促销活动对象
    data() {
        return {
            promotion: undefined
        };
    }

    如果无促销时变化状态如下:

    undefined -> null

    如果有促销时变化如下:

    undefined -> object

    不能一开始就用null,否则无法区分是没有促销活动还是没加载完数据。

    希望起到抛砖引玉的作用。
    (完)

    支持 0 反对 0 举报
    2021-11-28 10:33