javascript - 简单的 JavaScript 回调混淆
问题描述
我刚刚进入 javascript 回调,试图实现一个简单的元音计数功能。这就是我所拥有的,但我无法弄清楚这个回调的语法错误是什么。我确信这是一个非常明显的错误,但如果有人能启发我,那就太好了。
function isitVowel(letter){
return letter in ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'];
}
function countVowels(line){
return line.split(",").filter(isitVowel).length;
}
countVowels("a,b,c,d,e");
解决方案
我认为您没有正确使用运算in
符。它看起来更像是您想要检查该值是否在数组中,您可以使用该includes
函数:
function isitVowel(letter){
return ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'].includes(letter);
}
注意:检查浏览器兼容性。您可能需要包含 IE 的 polyfill。
另请注意:这实际上并不是您正在使用的“回调”。您只是将函数引用作为参数传递给另一个函数。“回调”是在完成异步操作后传递使用的函数。
推荐阅读
- python - Python OCR - 从 PDF 表单中提取笔迹
- postgresql - 如何处理两个冲突插入更新并行postgres查询
- python - 尝试在 API 中排序
- websphere - IBM Speech To Text - 以最高置信度和关键字作为第一个结果获得替代方案
- context-free-grammar - 将 CFG 转换为 CNF
- python - 使用 python 正确实现辛普森规则的问题
- node.js - 通过 Node.js 中的自定义应用程序访问 Excel Online
- python - Python算术计算器打印不正确的破折号数
- methods - 如何在触发条件时退出一个方法并运行另一个方法,JDA discord wrappper
- c# - 如何为控制台和 WPF .NET 应用程序的 PythonNET 设置 Runtime.PythonDLL(PIP 安装)