javascript - Javascript 功能无法正常工作
问题描述
我正在尝试将此函数分配给此变量,但无论我尝试什么都没有用,它给了我这个错误TypeError: addSix is not a function
const createBase = num => {
num + 6
}
let addSix = createBase(6);
addSix(10); // returns 16
addSix(21); // returns 27
请问有什么建议吗?
解决方案
有几个不同的问题:
createBase
是一个不返回任何内容的函数。您尝试创建为函数的部分 (
num => { num + 6 }
) 应该没有{}
或应该有return
(更多在这里)。您正在对 进行硬编码
6
,但您应该使用传递给createBase
.
您需要创建createBase
一个返回函数的函数:
// `createdBase` vvvvvvvvvvvvvvvvvvvvvvvvvvv
const createBase = num1 => num2 => num1 + num2;
// The func it returns ^^^^^^^^^^^^^^^^^^^
let addSix = createBase(6);
console.log(addSix(10)); // returns 16
console.log(addSix(21)); // returns 27
推荐阅读
- azure - Azure 应用程序网关当前连接
- vue.js - 在点击事件vue.js上将子组件方法传递给父组件
- javascript - 在 javascript 中重构/使代码更好
- reactjs - 使用 NextJS 前端表单进行 Django 后端身份验证 - 最佳实践
- excel - 获取特定日期的一年中的一周,将星期一视为 Excel 公式中一周的第一天
- c# - 将 PrintDialog 的 PrintQueue 设置为联网打印机时出错 - C# WPF XAML
- node.js - 无法安装 npm “删除现有 npm 失败!”
- python - 读取文本文件并使用子进程模块逐行执行代码
- typescript - Typescript 中的泛型类型不能用于索引对象
- java - VSCODE(Java)中输出前的长代码