ES6中&&和 __ 鲜为人知的骚操作

简介: ES6中&&和 __ 鲜为人知的骚操作

众所周知,在es6中,逻辑运算符&&代表与条件,||代表或条件

let info = {
   
  name:"long",
  age:null
};

//&&
//info的name与age同时为真,则结果为真
if(info.name && info.age){
   
  console.log("与条件"); //与条件
}else{
   
  console.log("失败");
}

//||
//info的name或age,只要有一个为真,则结果为真
if(info.name || info.age){
   
  console.log("或条件"); //或条件
}else{
   
  console.log("失败");
}

代替if/else

但是,他们还可以代表if/else进行简化

let info = {
   name:"long"};

let name = info && info.name; //long

let isVip = false;
let vipPrice = isVip || 19;//19
decide() && true();

//如果decide()执行后为true,则执行true(),并输出true()的值;如果decide()执行后为false,则输出decide()执行后的结果,且不执行true()


//预计使用场景,有一个mongo查询条件where,当name存在时,匹配name数据
where= {
   age:19};
name && where.name = name;
decide() || false();

//如果decide()执行后为true,则执行decide(),并输出decide()的值,fasle()不执行;如果decide()执行后为false,则执行fasle(),且输出false()的结果
decide() && true() || fasle();

//如果decide()执行后为true,则执行true(),并输出true()的值;
//如果decide()执行后为false,则执行false(),并输出false()的值
目录
相关文章
|
8月前
|
JavaScript
es5和es6的区别
es5和es6的区别
68 0
|
8月前
|
存储 JavaScript 前端开发
|
8月前
|
前端开发
es6的一些方法
es6的一些方法
46 0
|
5月前
|
JavaScript 前端开发 Java
​ES7、ES8、ES9、ES10、ES11、ES12都增加了哪些新特性?
​ES7、ES8、ES9、ES10、ES11、ES12都增加了哪些新特性?
|
8月前
|
前端开发 JavaScript
前端最常见的es6,es7,es8方法
【4月更文挑战第3天】 前端最常见的es6,es7,es8方法
83 5
|
8月前
|
前端开发 JavaScript API
ES6和ES5的区别
ES6和ES5的区别
59 0
|
8月前
|
JavaScript 前端开发
ES6 函数
ES6(ECMAScript 2015)是 JavaScript 的一个重要版本,它引入了许多新的特性和语法。其中,函数是 ES6 的一个重要组成部分,它提供了许多新的函数语法和特性,如箭头函数、函数参数默认值、函数解构赋值等。
48 8
|
8月前
|
JSON 前端开发 数据格式
ES7、ES8、ES9、ES10、ES11、ES12都增加了那些新特性?(一)
ES7、ES8、ES9、ES10、ES11、ES12都增加了那些新特性?(一)
139 0
|
8月前
|
前端开发 JavaScript Java
ES7、ES8、ES9、ES10、ES11、ES12都增加了那些新特性?(二)
ES7、ES8、ES9、ES10、ES11、ES12都增加了那些新特性?(二)
111 0

热门文章

最新文章