Error en Javascript: “Uncaught TypeError: isTripDay is not a function”

var tripDay = prompt('Porfavor ingrese el numero de dia en el que desea viajar');

while (!isTripDay() || !confirmDay()){

function isTripDay(){
  if (tripDay >= 1){
    return true;
  }else{
    return false;
  }
}

function confirmDay(){

  return confirm('Realmente desea comprar un pasaje para el dia '+tripDay+' ?');
  }

}
3
задан 22.12.2016, 01:03
3 ответа

Он показывает тебе эту ошибку, потому что ты определяешь функции внутри цикла, и не обнаруживает их, как который они были очевидными. Ты был бы должен доставать их снаружи для того, чтобы он обнаруживал их у тебя.

Твой исправленный пример:

var tripDay = prompt('Porfavor ingrese el numero de dia en el que desea viajar');

while (!isTripDay() || !confirmDay()){
   alert("hemos entrado");

}

function isTripDay(){
  if (tripDay >= 1){
    return true;
  }else{
    return false;
  }
}


function confirmDay(){

  return confirm('Realmente desea comprar un pasaje para el dia '+tripDay+' ?');
  }
1
ответ дан 24.11.2019, 11:54

Если был прав Рене, но в действительности я смог решать это, таким образом. Сейчас функционируй, как он желал

do {
 
var tripDay = prompt('Porfavor ingrese el numero de dia en el que desea viajar');


function confirmDay(){

  return confirm('Realmente desea comprar un pasaje para el dia '+tripDay+' ?');
  } 

function isTripDay(){
  if (tripDay >= 1 && tripDay <= 25){
    alert('Perfecto su viaje esta programado para el dia '+tripDay);
    return true;
  }else{
    alert('Lo sentimos, el dia seleccionado no tiene viajes programados');
    return false;
  }
}


}while (!confirmDay() || !isTripDay())
0
ответ дан 24.11.2019, 11:54

Также как и ошибка это говорит:

TypeError: isTripDay is not в function

это переменная и следовательно () будь в избытке

var tripDay = prompt('Porfavor ingrese el numero de dia en el que desea viajar');

function confirmDay(){

  return confirm('Realmente desea comprar un pasaje para el dia '+tripDay+' ?');
  }

while (!isTripDay || !confirmDay()){

function isTripDay(){
  if (tripDay >= 1){
    return true;
  }else{
    return false;
  }
}


}
-2
ответ дан 24.11.2019, 11:54
  • 1
    Это funció n, только, что в момент называния ее, все еще не определена. – Marcos 22.12.2016, 04:07
  • 2
    если aú n не está определенная aú n не funció n. Того, чтобы не быть así не habrí в ningú n ошибка. – Rene Limon 22.12.2016, 17:43
  • 3
    Если ты обращаешь внимание основательно переменную isTripDay, он не существует, а именно, что Вашей стоимости undefined. Следовательно !isTripDay true. ¿ Каковой была бы цель это делать? И aú n более важно, если не предполагается, что это funció n, ¿ из-за какой тогда пара линий ниже определяет function isTripDay(){? – Marcos 22.12.2016, 18:01