在文件中执行 IIFE 时出现意外输出.js
Unexpected output while executing an IIFE in .js file
我一直在浏览器中使用一个简单的HTML文档测试以下代码段,以获得类似 50 > EVEN NUMBER .
75 > ODD NUMBER .
-1 > INVALID NUMBER .
在 JavaScript 对话框中。但是,我只能看到最后一个对话框,而不是 3 个单独的对话框。我很想知道为什么会发生这样的事情。
function isEven(X) {
var number = X;
var sol = (function find(number) {
if(number === 0) {
return 'Even';
} else if(number === 1) {
return 'Odd';
} else if(number > 1) {
find(number-2);
} else if(number < 0) {
return 'Invalid';
}
}(number));
switch(sol) {
case 'Even':
alert(number+' is an '+'EVEN NUMBER .');
break;
case 'Odd':
alert(number+' is an '+'ODD NUMBER .');
break;
case 'Invalid':
alert(number+' is an '+'INVALID NUMBER .');
break;
}
}
isEven(50);
isEven(75);
isEven(-1);
您尝试递归调用find
,但是当您调用find(number-2);
时,您忘记return
任何内容。因此,该函数返回undefined
与switch
中的任何情况都不匹配。
相关文章:
- 意外的javascript输出
- JavaScript:控制台的意外输出.log('str' + int + int)
- 为什么console.log()在我的代码中输出意外的0
- 在文件中执行 IIFE 时出现意外输出.js
- 基本的JavaScript,如果给出意外的输出,则有多个其他
- JavaScript 二维数组填充中的意外输出
- SyntaxError:JSON.parse:解析PHP输出时出现意外字符
- 带有数组赋值的Javascript意外控制台输出;
- 在一系列对象中意外重复输出
- 为什么脚本会给出意外的输出
- Javascript输出原因意外的令牌<
- 与函数一起使用时this的值.调用产生意外输出
- 过程代码的意外输出值
- js中罕见的意外输出的调试帮助
- 输出HTML时出现意外的令牌错误
- 输出文本文件时出现意外字符串
- 如何输出JSON解析兼容JSON与PHP json_encode?JSON.parse -由于单转义双引号导致的意外令牌
- 响应.json() 上的“意外输出结束”错误
- 使用Moment.js的JS间隔生成函数:意外输出
- 使用for(..)遍历数组时的意外输出)循环