||和&&返回什么?

||和&&实行历程

假如能说清楚下面代码的实行历程, 就没必要看了

//第一题
if(0 || null || ""){
  console.log(1)
} else {
  console.log(2)
}

//第二题
//下面代码返回什么?
0 || null || "" 

//第三题
//下面代码是什么意义
var app = app || {}

须要的学问:

  • 5个 falsey 值: 数字0, NaN, “”, undefined, null
  • || 基础不可能返回 true 或许 false (&& 相似,下同)
  • || 返回第一个 truely 值, 找到就住手实行下面的操纵, 假如没有truely值, 则返回末了一个值 找长处,而且返回第一个长处,找不到返回末了一个瑕玷

第一题代码历程:

  1. 实行0 || null || "" ,返回""
  2. if(){}中, ()内的内容须要转化为 true 和 false, 由于""转化为 false, 所以打印出2

第三题诠释:

  1. 假如 app 是 truely 值(假如他人之前定义 app, 就为 truely ), var app = app,
  2. 假如 app 是 falsey 值(假如他人之前没有定义过 app, 就为 falsey), var app = {}
  3. 作用是防备你掩盖他人之前定义的 app 变量
    原文作者:wojiaofengzhong
    原文地址: https://segmentfault.com/a/1190000013035185
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞