我是第一次用 Node.js 构建一个应用程序,对异步函数有点困惑。我越来越善于识别什么时候因为异步而无法工作,但仍然不确定如何解决它。
这是我的功能:
function titleCase(element){
var string = element.replace(/([^\W_]+[^\s-]*) */g, function(txt){
return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();
})
element = string;
}
var 1 = "UPPER CASE"; var2 = "lower case"; var3 = "MiXeD CaSe";
titleCase(var1);
titleCase(var2);
titleCase(var3);
console.log(var1 + " " + var2 + " " + var3);
}
(函数应该接受一个字符串并给它标题)。
目前,当代码运行时,我得到
UPPER CASE lower case MiXeD CaSe
很明显,在函数正确触发console.log
之前正在发生。titleCase
我知道一种解决方案是不使用该函数,只需为每个变量调用字符串替换 3 次,但我想学习异步执行此操作。
实现此目的的最佳方法是什么,以确保console.log
仅在完成所有 3 个功能后触发该功能titleCase
?