Olá, Lucas! Tudo bom?
Primeiramente quero te pedir desculpas pela demora em dar um retorno.
Acredito que o que você estava querendo criar fosse uma mask, uma máscara, para a entrada de altura, "forçando" o usuário a digitar corretamente. Adorei a sua ideia, realmente ficaria ótimo, porém acredito que não seja possível usar máscaras pelo prompt, segundo o que pesquisei.
Uma solução que eu poderia te recomendar para que o usuário seja obrigado a digitar corretamente é usar um while! Um laço de repetição que vai executar constantemente determinado trecho de código se uma condição for verdadeira.
Deixo aqui duas opçoes de uso do while para esse caso:
- Com
while:
var heightInformed = prompt(name + ", report your height");
var weightInformed = prompt(name + ", report your weight");
while (isNaN(heightInformed) || isNaN(weightInformed)) {
alert("Invalid values! Type it again.")
heightInformed = prompt(name + ", report your height");
weightInformed = prompt(name + ", report your weight");
}
- Com
do while:
do {
var heightInformed = prompt(name + ", report your height");
var weightInformed = prompt(name + ", report your weight");
} while (isNaN(heightInformed) || isNaN(weightInformed));
Em ambos as soluções, o conceito é bem simples, podemos ver que é verificado dentro da condição do while se o valor de altura ou de peso não são altura e, se não forem mesmo, o conteúdo dele (as perguntas) irão se repetir.
Espero que isso tenha te ajudado, qualquer dúvida estamos aqui. Bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado. ✓