gpt4 book ai didi

javascript - 定义自定义 Javascript 函数的回调

转载 作者:行者123 更新时间:2023-11-28 00:12:49 25 4
gpt4 key购买 nike

场景是我正在编写一些自定义的 javascript 方法,让我们假设一下。

function callMe(){
//Do some stuff and return.
}

现在我想添加一些函数,我不确定它们是否会被视为回调,但它们会在某个时刻被触发,因为 callMe() 是正在被处决。假设我希望一旦有人调用 callMe() 方法beforecallMe() 就需要执行

function beforecallMe(){
// Do something and continue with callMe method

}

再次,我想在 callMe 执行完其代码部分后立即调用一个方法,比如说方法 afterCallMe()

function afterCallMe(){
//Triggered after callMe has executed
}

那么我有什么可能的方法可以通过回调或任何其他方式来做到这一点。

此外,我想知道当特定函数将要执行或已执行时,是否可以调用其他自定义函数作为回调,这在某种程度上是一个触发器。

例如:有一个方法sendmail(),之后我有时希望调用sendReport()> 或 startaProgram()doSomething() 等等。有什么办法可以实现这一点吗?

最佳答案

有很多方法可以解决这个问题。

这里有两个。

一种使用函数参数和内部包含函数的对象,然后使用回调。它们都是有效的,但如果你问我的话,回调会更简单一些。

//you can pass a parameter and
//use that in a switch statement
//to decide what to do
var funcs = {
start: function(next) {

switch (next) {
case 1:
this.startProgram();
break;

case 2:
this.sendReport();
break;

case 3:
this.doOtherThing();
break;

default:
console.log('do nada');
break;
}
},

startProgram: function() {
console.log("starting a program");
},

sendReport: function() {
console.log("sending report");
},

doOtherThing: function() {
console.log("Doing something else");
}
};

funcs.start(1)
funcs.start()

//Or you can do it with callbacks
function doSomethingElse(callback) {
console.log("doing something");
callback();
}

doSomethingElse(function() {
console.log("I'm a callback!");
});

关于javascript - 定义自定义 Javascript 函数的回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30740308/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com