当前位置:  开发笔记 > 编程语言 > 正文

Javascript complex One-liner if语句

如何解决《JavascriptcomplexOne-linerif语句》经验,为你挑选了1个好方法。

第一次看到这样的三元表达式:

var somevar = b1 ? b2 ? b3 : b4 : b5 ? b6 : b7 ? b8 : b9 ? b10 : b11

很难理解并将其转换为:

if (b1) {
} else if (bx) {
}

我到处寻找,似乎无法找到答案.



1> Louay Alakka..:

只需添加括号.

var somevar = (b1 ? (b2 ? b3 : b4) : (b5 ? b6 : (b7 ? b8 : (b9 ? b10 : b11))))

if (b1) {
  if (b2) {
    b3
  } else {
    b4
  }
} else {
  if (b5) {
    b6
  } else {
    if (b7) {
      b8
    } else {
      if (b9) {
        b10
      } else {
        b11
      }
    }
  }
}

或者缩短它.

if (b1) {
  if (b2) {
    b3
  } else {
    b4
  }
} else if (b5) {
  b6
} else if (b7) {
  b8
} else if (b9) {
  b10
} else {
  b11
}

从最右边开始.每当你发现a ? b : c在它周围添加括号.

例如:

 a ?  b ? c : d  : e

 a ? (b ? c : d) : e

(a ? (b ? c : d) : e)

推荐阅读
U友50081205_653
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有