gpt4 book ai didi

javascript 三元运算符 "chaining"

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:07:32 29 4
gpt4 key购买 nike

我正在尝试使用三元运算符编写类似这样的东西(由于 jsx 语法限制而需要)

if(!this.state.msg) {
if(this.state.ask.length != 0) {
// do stuff
} else {
// do stuff
}
if(this....) {
//do stuff
} else {
// ...
}
} else {
//nothing
}

所以我试了一下这个笨蛋

   !this.state.msg ? this.state.ask.length != 0 ? //do stuff : "" this.state... ? //do stuff : //do other stuff : //nothing

但这显然不是正确的做法。

非常欢迎任何帮助。提前致谢。

最佳答案

您的真实分支有两个组成部分;您可以用逗号分隔它们(带括号,因为逗号的结合性比三元运算符弱)。所以

!this.state.msg ?
(
this.state.ask.length != 0 ? /*stuff*/ : /*stuff*/,
this... ? /* stuff */ : /* ... */
) : /* nothing */

或者,由于 else 分支“什么都不做”,您可以用简单的 and 替换顶层的三元运算符:

!this.state.msg &&
(
this.state.ask.length != 0 ? /*stuff*/ : /*stuff*/,
this... ? /* stuff */ : /* ... */
)

关于javascript 三元运算符 "chaining",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33175738/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com