假设我们有这样的代码(js):
/**
* @param {String} type Could be only 'high' or 'low'
* @return {String}
*/
function getSome(type) {
if (type == 'high') {
return 'This is high';
} else if (type == 'low') {
return 'This is low';
}
}
如果这个变体比这个更好(我不包括评论;它们是一样的)?:
function getSome(type) {
if (type == 'high') {
return 'This is high';
} else {
return 'This is low';
}
}
我遇到过很多次类似的情况。通常我不会考虑最好的变体,而是写下最先出现的。但现在我想决定将来使用什么变体。
最后一个问题。如果一个变量只能有两个值并且第一个值是在 if
语句中给出的,我是否需要在 else
中检查变量的相等性?我还想知道使用函数注释会如何影响答案。
最佳答案
如果只有值 high
和 low
有效,请考虑第三个选项:
function getSome(type) {
if (type === 'high') {
return 'This is high';
} else if (type === 'low') {
return 'This is low';
} else {
throw new Error(type + ' is invalid');
}
}
快速失败。这可以帮助您更快地找到错误。
关于javascript - 在 'else' 语句中检查 'if - else' 是否相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40431639/