您可以在同一行中进行布尔检查和赋值吗?
即,如果我有一个可以返回值或可以返回 null 的函数。
const someFunc = () => {
if (someCondition) return null;
return 'Hello, world';
}
我想在另一个函数中使用该值,但只有当它不为空时,我才能做到这一点......
const someOtherFunction = () => {
let value = someFunc();
if (!value) return;
// do something
}
我可以将这两行包装成一个“分配和验证”检查,如...
if (let value = someFunc()) {
// do something
}
或类似的东西?
是的,你可以这么做。只需将声明移出 if 语句
function someFunc(){
if (true) return null;
return 'Hello, world';
}
var value=null;
if (value = someFunc()) {
alert(value);
}
else{
alert('not hello')
}
这是小提琴链接,以便您可以使用它 - https://jsfiddle.net/mz09rca1/
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句