【问题标题】:How to pass properties to a variable function in javascript?如何将属性传递给javascript中的变量函数?
【发布时间】:2016-07-08 02:17:11
【问题描述】:

如何将属性传递给变量函数? variable() 有效,但是当我尝试传递属性时,我得到 "Uncaught TypeError: variable is not a function"

function firstFunc(a) {
  return `${a}`;
}

let variable = firstFunc();
document.write(variable(1));

【问题讨论】:

  • 我不知道你想在这里实现什么。 newFunc 未定义。
  • 这些不是“属性”,它们是“参数”或“参数”。没有“变量函数”之类的东西,但变量可以持有函数。另外,能否请您修改您的帖子以使用一致的名称。

标签: javascript function


【解决方案1】:

你写了let variable = firstFunc(),所以变量是firstFunc()的执行结果

您希望 variable 是对该函数的引用(如别名),因此您不需要放置括号

function firstFunc(a) {
  return `${a}`;
}

let variable = firstFunc;
document.write(variable(1));

【讨论】:

    【解决方案2】:

    两个错误:

    • 你混淆了firstFuncnewFunc
    • 要将函数的引用分配给变量,不要称其为firstFunc(),只需将其分配不带括号()

    这在支持您正在使用的 ES6 功能的浏览器中运行良好:

    function firstFunc(a) {
      return `${a}`;
    }
    
    let variable = firstFunc;
    document.write(variable(1));

    【讨论】:

      猜你喜欢
      • 2016-08-21
      • 2014-10-25
      • 1970-01-01
      • 2015-05-02
      • 2015-06-08
      • 2017-11-30
      • 2015-07-10
      • 1970-01-01
      相关资源
      最近更新 更多