Это не функция, а действие... или, точнее, оператор.
Используется по прямому назначению - что-либо возвращает из функций.
Необходимо это как минимум по одной простой причине - функция всегда является локальной областью видимости... то есть, получить значение созданных внутри функции переменных нельзя, например, в другой функции... это исправляет return, ибо в таком случае вызов функции равен значению, которое указано после return.
По сути, если функция ничего не возвращает и не переписывает другие переменные, то смысл ее существования под большим вопросом.
function myFunc() {
const str = 'string';
}
console.log(str); // Ошибка
---
function myFunc() {
const str = 'string';
return str;
}
console.log(myFunc()); // string
---
function myFunc() {
const str = 'string';
return str;
}
const str = myFunc();
console.log(str); // string