我应该如何缩短以下代码?
How would I should I shorten the following piece of code?
我有以下一段代码。它很简单并且可以完成工作......但它对我来说太长了。
if ( isInputValid( userInput ) ) {
return userInput;
} else {
console.log('User Input is Invalid!');
}
通常情况下,我只会使用三元运算符。但是,在这种情况下,我不能。
// not possible, invalid
isInputValid( userInput ) ? return userInput : console.log('User Input is Invalid!');
但是,是否有另一种方法可以缩短和进一步简化 if
和 else
语句?像胖箭头语法之类的东西吗?
非常感谢。
看来你有几个选择。首先,由于您似乎是从一个函数中 returning,您可以通过简单地省略 else 部分来缩短您的初始代码。
if ( isInputValid( userInput ) ) {
return userInput;
}
console.log('User Input is Invalid!');
现在您仍然可以根据需要使用三元运算符,您只需要 return 三元运算符本身的结果。
return isInputValid(userInput) ? userInput : console.log('User Input is Invalid!');
基于@Nick 的回答,缩短此代码的一个好方法是简单地执行以下操作。
if ( isInputValid( userInput ) ) return userInput;
console.log('User Input is Invalid!');
能够删除大括号,因为它是单个语句,然后删除 else
因为 console.log()
实际上只有在前一个语句是 false
时才会执行反正。因此,它使 else
变得不必要。
短小精悍,漂亮!
我有以下一段代码。它很简单并且可以完成工作......但它对我来说太长了。
if ( isInputValid( userInput ) ) {
return userInput;
} else {
console.log('User Input is Invalid!');
}
通常情况下,我只会使用三元运算符。但是,在这种情况下,我不能。
// not possible, invalid
isInputValid( userInput ) ? return userInput : console.log('User Input is Invalid!');
但是,是否有另一种方法可以缩短和进一步简化 if
和 else
语句?像胖箭头语法之类的东西吗?
非常感谢。
看来你有几个选择。首先,由于您似乎是从一个函数中 returning,您可以通过简单地省略 else 部分来缩短您的初始代码。
if ( isInputValid( userInput ) ) {
return userInput;
}
console.log('User Input is Invalid!');
现在您仍然可以根据需要使用三元运算符,您只需要 return 三元运算符本身的结果。
return isInputValid(userInput) ? userInput : console.log('User Input is Invalid!');
基于@Nick 的回答,缩短此代码的一个好方法是简单地执行以下操作。
if ( isInputValid( userInput ) ) return userInput;
console.log('User Input is Invalid!');
能够删除大括号,因为它是单个语句,然后删除 else
因为 console.log()
实际上只有在前一个语句是 false
时才会执行反正。因此,它使 else
变得不必要。
短小精悍,漂亮!