首页 > 解决方案 > Javascript 功能无法正常工作

问题描述

我正在尝试将此函数分配给此变量,但无论我尝试什么都没有用,它给了我这个错误TypeError: addSix is not a function

 const createBase = num => {
      num + 6
    }
    
    let addSix = createBase(6);
    addSix(10); // returns 16
    addSix(21); // returns 27

请问有什么建议吗?

标签: javascript

解决方案


有几个不同的问题:

  1. createBase是一个不返回任何内容的函数。

  2. 您尝试创建为函数的部分 ( num => { num + 6 }) 应该没有{}或应该有return(更多在这里)。

  3. 您正在对 进行硬编码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


推荐阅读