我正在做 Codecademy JS 培训,作为我即将学习的课程的回顾。我点击了 creditCheck 函数练习,它基本上只需要一个函数来计算一个整数并返回一个大于 100 的值,以及一个小于 100 的值。我认为下面的代码应该可以工作,但是它在没有被调用的情况下运行。为什么会这样?
creditCheck = function(income)
{
income *= 1; // one way to convert the variable income into a number.
if (income>100)
{
console.log("You earn a lot of money! You qualify for a credit card.");
return true; // this is an actual return value, console.log() always returns "undefined"
}
else
{
console.log("Alas you do not qualify for a credit card. Capitalism is cruel like that.");
return false;
}
};
console.log("If the log is executing in the function def then this should print second. Otherwise it's probably being executed by the coding script itself.\n\n")
解决方案(可能):所以我只是在 Codecademy 站点的控制台中测试了脚本。它不会在除该站点之外的任何地方自行执行。这使我相信该页面发生了一些时髦的事情。
更多分辨率(也可能):我还添加了上面的最后一行来测试函数何时被调用。由于它是程序的最后一行,我的假设是,如果执行是在函数体本身中,那么最后一行将最后打印。这让我相信评分脚本会自行调用该函数,这意味着当我添加实际的函数调用时,它会搞砸。