欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

短路运算符 || &&

程序员文章站 2022-05-13 19:56:29
...

短路运算符||和&&

逻辑或 || : 

let test = xxx || 3  //

    简单来讲就是 如果||左边 转换为布尔值 为 false 那么 test的值就等于 || 的右边,否则是左边;

逻辑与 && :

 let color = xxx && "#fff";

    如果 &&左边的 转换为布尔值 为true 那么 test值就等于 &&号右边的值, 如果&&左边为false 那么就把 就把他的结果显示出来如 null undefind 0 等;

    

 var oooooooo = "" ;//null,undefined,NaN,0
        var test = oooooooo&&2;
        console.log(test);

短路运算符 || &&

自我总结:

    在实际项目中 在自己写方法的时候 判断变量的时候经常用 ||

function(xx1,xx2,xx3){
   var aa1 = xx1 || "aa1";
   var aa2 = xx2 || "aa2";
   var aa3 = xx3 || "aa3";
}

但是由于js的参数没有个数限制,如果我只想传xx3,不想传xx2 那么就会遇到, ("aa", "","aa3"),这样的写法 才能满足我的要求,好蠢...,

后来就改用

function xxx(options) { 
            if (options.hasOwnProperty("asdads")) {
                var xx = options.asdads || "xxx";
            }
         }

 ,在写表单验证的时候 就是用的这种写法 结果写了 一大坨,很是麻烦.由于并没有看过 很多js源码,和程序设计书籍,以后看看有没有什么好的方法吧

今天学习的时候 看到这种写法(由于以前没用过&& 今天使用的时候感觉有点意思,不过在整理笔记的时候发现跟三元运算符有点相似)

 options && options.color || '#d85030'; //options 成立,如果 options.color 也成立 那么就是options.color 否则就是 "#d", options 不成立直接就是"#d"
  var aa = option? option:"#asd"; // 有些许的相似之处

以后在用js写方法中 会尝试 对这三种写法混用,

ps 第一次用csdn 写笔记 ....很麻烦.

                                                                                                                                                





上一篇: 我陪你长大

下一篇: 虚度年华