Я создаю приложение с Node.js в первый раз и немного запутался в асинхронных функциях. Я лучше узнаю, когда что-то не сработает из-за асинхронности, но все же не уверен, как исправить это.Javascript - Выполнение функции асинхронно
Вот моя функция:
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 раза для каждой переменной, но я хочу научиться делать это асинхронно.
Каков наилучший способ достичь этого, чтобы функция ТОЛЬКО ТОЛЬКО срабатывала после того, как все функции 3 titleCase
были выполнены?