是否可以创建一个布尔if语句,即if (a method that has a void data type) = true { then do the following
?
或者该方法是否也需要布尔值?
答案 0 :(得分:0)
if-expression必须具有布尔类型。如果它只是一个调用,则需要调用一个返回boolean的方法。如果你要比较真实,通常是浪费时间,你还需要一个布尔表达式。
你想测试什么?如果您只是想知道它是否完成而没有例外,您可以使用:
try{
method call
code to execute if it does not throw an exception
} catch(ExceptionYouExpectItToThrow e) {
code to execute if it does throw the exception
}
如果您正在尝试测试方法执行的其他内容,则需要指定要测试的内容。
答案 1 :(得分:0)
在JS中,一个不返回任何值的函数将是undefined
这是一个假值,即它相当于false
:
function foo() {
}
if (foo()) {
console.log("TRUE:" + foo());
}
else {
console.log("FALSE:" + foo()); // outputs: FALSE: undefined
}
显然测试这样一个函数的值是多余的