如何在JavaScript上运行函数

How to run function on JavaScript?

本文关键字:运行 函数 JavaScript      更新时间:2023-09-26

我想在JavaScript上运行作为参数发送的函数,例如我创建这个脚本,我想从这个脚本打印"成功测试",但脚本打印鲸鱼函数作为文本。因此,我如何运行作为参数发送给函数的函数?

test=function (p1) {
        return p1;             
    }
var result=test(function(){
    return "successful test";
});
console.log(result);

您应该返回return p1();

var test=function (p1) {
        return p1();             
    }
var result=test(function(){
    return "successful test";
});
console.log(result);

JSFiddle演示

代码应该是这样的:

test=function (p1) {
        return p1;             
    }
var result=test(function(){
    return "successful test";
}());

console.log(result);

说明

要调用javascript中作为参数传递给另一个函数的函数,您可以像往常一样使用括号简单地调用它。

function myFunction(callback) {
   return callback();
}

但是,您也可以使用函数原型方法Function.prototype.apply()Function.prototype.call()

<标题> 例子

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
</head>
<body>
  <script>
    function myFunction() {
      return 'success <br />';
    }
    function simpleInvocation(fn) {
      document.write('<h1>simple</h1>');
      return fn();
    }
    function callInvocation(fn) {
      document.write('<h1>call</h1>');
      return fn.call(this);
    }
    function applyInvocation(fn) {
      document.write('<h1>apply</h1>');
      return fn.apply(this);
    }
    document.write(simpleInvocation(myFunction));
    document.write(callInvocation(myFunction));
    document.write(applyInvocation(myFunction));
  </script>
</body>
</html>