我只是想弄清楚为什么此代码无法正常工作。
var programming = false;
var happy = function() {
if(programming === true) {
happy = false;
}
else {
happy = true
}
};
或我的辅助代码
var programming = false;
var happy = function() {
if(programming === true) {
happy = false;
}
if(programming) {
happy = true;
}
};
最佳答案
我想你是说
var programming = false;
var happy = function() {
if(programming === true) {
return false;
}
else {
return true;
}
};
这就是javascript的工作方式。您可以使用关键字
return
设置函数的返回值,而不是通过将函数重新分配给它的返回值。您的代码会发生的情况是,第一次调用该函数时,它将被其返回值(即布尔值)代替。第二次尝试调用该函数时,该函数不再存在,因为变量
happy
现在包含一个布尔值(第一次调用它的结果)。关于javascript - boolean 不是函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23838895/