• javascript中!!运算符


    在查看一些插件源码时,在做数据校验时,经常用到!!运算符,如:

    乍看有点懵,其实按照js内置 "!" 运算符从右到左按次序剖析,也就理解了。

    先看内层运算: !obj ,这是一个非运算:

    当obj为假(null/undefined/false/NaN/""等),非运算后的结果未false;

    当obj为真(非null/undefined/false/NaN/""等),非运算后的结果未true;

    即:

    !obj ===false ( obj为真时  )

    !obj ===true ( obj为假时  )

    再进行一次取非操作,结果就很明显了:

    !!obj === true ( obj为真时 )

    !!obj ===false ( obj为假时  )

    所以,"!!"操作符是判断变量是否真正为真(非null/undefined/false/NaN/""等)的很简明的实现方式,省去了大量的&&运算,如果用&&来实现上述求真逻辑,代码表现如下:

            if( obj!==null &&obj!==undefined && obj!==NaN && obj!=="" && obj!==false){
                //statements
            }

    表现非常的臃肿。

    综上“!!”运算符在js中是求真的一个非常优秀的方法,在日常的代码编写中要用进去了~^_^

    路漫漫其修远兮,吾将上下而求索。 May stars guide your way⭐⭐⭐
  • 相关阅读:
    (5)html表单
    (4)html表格
    (3)HTML ”列表“、图片和超链接
    (1)html开头解说与案例演示
    学习web前端前感
    一、资源合并与压缩
    HTTP协议原理
    图解HTTP总结
    基于TypeScript从零重构axios
    元組
  • 原文地址:https://www.cnblogs.com/surfer/p/9639022.html
Copyright © 2020-2023  润新知