鉴于2个条件,我想按以下方式返回对象或布尔值:
function foo() {
if (a==b) {
return {
bool: bool,
string: "string"
};
} else {
return false;
}
}
function callFoo() {
var obj = foo();
}
这似乎对我来说是失败的。 IE出于某种原因也不会达到断点,因此我很难解决问题。
致谢。
答案 0 :(得分:1)
是的,在Javascript中,您可以从同一函数返回不同的类型。看下面的例子:
function getAnswer(input) {
if (input == "foo") {
return "bar";
}
else if (input == true) {
return true;
}
else if (input == 100) {
return {
type:"number",
value:100,
}
}
return false;
}
// Different inputs
console.log(getAnswer("foo"));
console.log(getAnswer(true));
console.log(getAnswer(100));
console.log(getAnswer(false));
答案 1 :(得分:0)
我想我了解您,但我不确定。如果我错了,请修复我:
function foo(a, b) {
if (a==b) {
return {
bool: true,
string: "string"
};
}
return false;
}
function callFoo(a, b) {
var obj = foo(a, b);
console.log(obj);
}
callFoo(1, 1);
callFoo(1, 2);