`prefer-single-boolean-return` clarification
zloirock opened this issue · comments
After #324 this code reports sonarjs/prefer-single-boolean-return
:
function isTemplateObject(value) {
if (!isFrozenStringArray(value, true)) return false;
var raw = value.raw;
if (raw.length !== value.length || !isFrozenStringArray(raw, false)) return false;
return true;
}
How should I rewrite it (getting value.raw
is an observable operation)?
I am not sure what is observable operation, but how about this?
function isTemplateObject(value) {
if (!isFrozenStringArray(value, true)) return false;
var raw = value.raw;
return raw.length === value.length && isFrozenStringArray(raw, false);
}
Ah, thanks, I thought that the first if
is also taken into account and recommended something like
function isTemplateObject(value) {
var raw;
return isFrozenStringArray(value, true)
&& (raw = value.raw).length === value.length
&& isFrozenStringArray(raw, false);
}
@B2o5T her case is correct since the condition is inverted.
Oops sorry, my mistake 😄