我有一个函数,它返回一个值,如果满足条件,则返回 true,否则返回 false,但如果出现错误,该函数也可以返回字符串消息。
我需要区分正常条件下的真/假布尔值,而不会将字符串值误认为任何一个。我的策略是使用一个函数,该函数在传递布尔输入时将返回一个真正的布尔类型的真/假值,但在传递一个字符串时parseBoolean()
返回一个不是布尔类型的“假”值。false
例子
function validate(kkk)
{
//... some check that validates
return true;
//... some check that doesn't validate
return false;
//... failure - return explanation
return 'Error Message jjjjjjjj';
}
function usingit(data)
{
if(parseBoolean(validate(data)) != false)
{
/// the value is Boolean true
}
else
{
if(parseBoolean(validate(data)) === false)
{
/// the value is Boolean false
}
else
{
/// the value is false but not of a Boolean type
/// so we will display it as the error message text.
}
}
}
...但我还没有弄清楚如何创建一个parseBoolean()
以这种方式运行的函数。有任何想法吗?