hola Robert... yyy en mi opinión si lo vas a comparar y usar siempre como valor numérico lo pondria como número y no como string..
pero el bueno de javascript te permite comparar valores de diferentes tipos... y los convierte a número automaticamente...
te acordas del
"1" == 1, true (aca transforma el "1" a número)
"1" === 1, false (aca el 1 es número y el "1" es string...
y en el caso de mayor o menor como en el ejemplo y tambien en las divisiones multiplicaciones y resta siempre convierte a numero en la comparación...
creo que te estoy explicando algo que ya sabes..
creo que esta mal planteado pero no que es un error....
porque generalmente cuando le pedimos al usuario que ingrese un dato la función promt() devuelve un string, y tal vez para ahorrar lineas de codigo no se lo convierte ya que lo hace solo js en la comparación...
Bueno, espero te haya resuelto la duda, o sino que alguin tambien me corrija si estoy equivocado,
saludos