Dependiendo del contexto de lo que desees aplicar.
Una funcion puede o no retornar un valor, dependiendo de la manera en que esta se estructure.
De igual manera el return puede ser un punto de quiebre del proceso.
Dependerá del punto en el que implementes está situación.
En el caso de el ejercicio que se pone en practica se requiere que la funcion ejecute una serie de actividades y retorne el valor de esas actividades.
En otros casos se requerirá que se ejecuten actividades y dentro de la misma funcion se muestre un valor.
La logica que podemos aplicar a esto es que si tu estás desarrollando por ejemplo un programa donde requieres ejecutar un valor para una n cantidad de ejercicios puedes obtener los diferentes valores de estos ejercicios con diferentes elementos, como se aplica en este video. y no influye en otros aspectos como el nombre de la persona, funciona para todos.
Por otro lado la función podría desarrollar el ejercicio integrando a la persona dentro de la función y sin la necesidad de un return estructurandolo de la siguiente manera:
function calcularImc(peso1, altura1,peso2,altura2, persona1, persona2) {
imc1= peso1 / (altura1 * altura1);
imc2= peso2 / (altura2 * altura2);
imprimir("El promedio del imc calculado de "+persona1+" y "+persona2+"es: " + (imc1+imc2)/2);
}
Como podrás notar toda la ejecución se realiza dentro del programa sin necesidad de que la función nos retorne un elemento. Por supuesto reitero que esto es funcional dependiendo del contexto de tus necesidades del sistema. Por lo general como bien se menciona en el video, la creación de una función es que este proceso lo podamos repetir una N cantidad de veces sin la necesidad de preocuparnos por cuantas veces se realiza y que se le puedan envíar los parametros que sean. (Claro mientras correspondan a nuestros elementos analizados dentro de la función).
Para finalizar, el return se usa cuando se requiere que la función nos entregue un resultado en especifico.
No se usa cuando el proceso que requerimos se ejecuta dentro de la funcion.