Javascript null 合并帮助,如何合并阈值? a = b || c 但如果 b > d、选择c
我想在 javascript 中为变量赋值
var a = b || c; //however if b > 200 choose c
有没有简单的方法可以做到这一点?
var a = (b && b <= 200) ? b : c;
感谢您的任何提示或建议。只是想尽可能干净地写这个。
I want to assign a value to a variable in javascript
var a = b || c; //however if b > 200 choose c
Is there a simple way to do this?
var a = (b && b <= 200) ? b : c;
Thanks for any tips or advice. Just trying to write this as cleanly as possible.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
![扫码二维码加入Web技术交流群](/public/img/jiaqun_03.jpg)
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以进一步简化它:
或者,更具可读性,
解释:
&&
来获取第一个假值,或者如果没有任何值,则获取最后一个真值。||
获取第一个真实值,如果没有,则获取最后一个虚假值。因此:
如果
b
为假然后,
b<=200 && b
为假,因此b<=200 &&乙|| c
给出c
如果
b
为真如果
b<=200
然后,
b<=200 && b
给出b
,这是真的,所以b<=200 &&乙|| c
也给出b
。如果
b>200
然后,
b<=200 && b
给出false
,这是假的,所以b<=200 &&乙|| c
给出c
。一些测试:
You can simplify it even more:
Or, more readable,
Explanation:
&&
to get the first falsy value or, if there isn't any, the last truly one.||
to get the first truly value or, if there isn't any, the last falsy one.Therefore:
If
b
is falsyThen,
b<=200 && b
is falsy, sob<=200 && b || c
givesc
If
b
is trulyIf
b<=200
Then,
b<=200 && b
givesb
, which is truly, sob<=200 && b || c
givesb
too.If
b>200
Then,
b<=200 && b
givesfalse
, which is falsy, sob<=200 && b || c
givesc
.Some tests: