我最近将HasValue函数添加到我们的内部javascript库中:
function HasValue(item) {
return (item !== undefined && item !== null);
}
在与同事打招呼的过程中,我们想到了还要添加另一个基本上与之相反的函数的想法:可能是HasNoValue或IsNothing
如果最终这样做,我们将有:
function HasNoValue(item) {
return (item === undefined || item === null);
}
function HasValue(item) {
return !HasNoValue(item);
}
但是,我们不确定同时拥有HasValue和HasValue是否更具可读性。
哪个更易读/首选?
A:
if (HasValue(x) && !HasValue(y))
B:
if (HasValue(x) && HasNoValue(y))
最佳答案
我非常喜欢A而不是B。是所有人都应该理解的编程习惯用法。