Errores javascript

Iniciado por rubcr, 12 Mayo 2020, 01:06 AM

0 Miembros y 1 Visitante están viendo este tema.

rubcr


Necesito ayuda para saber que hacer para corregir los errores que aparecen en la imagen.

window is not defined
prompt is not defined
parseint is not defined
alert is not defined
unexpected console statement
unexpected console statement
document is not defined

Un saludo.

EdePC

window, prompt, alert y document son Objetos JavasScript propios del Navegador Web, si no vas a utilizar un Navegador Web como intérprete no te van servir.

parseInt con Int inicial-mayúscula si que es propio del Estándar javascript.

Depende mucho de como y con que estés trabajando. Puedes crear un WorkSpace en Chrome o utilizar editores sencillos como Notepad++, SublimeText, o unos más avanzado como Visual Studio Code o IDEs como Eclipse, Netbeans, WebStorn.

rubcr

Cita de: EdePC en 12 Mayo 2020, 02:18 AM
window, prompt, alert y document son Objetos JavasScript propios del Navegador Web, si no vas a utilizar un Navegador Web como intérprete no te van servir.

parseInt con Int inicial-mayúscula si que es propio del Estándar javascript.

Depende mucho de como y con que estés trabajando. Puedes crear un WorkSpace en Chrome o utilizar editores sencillos como Notepad++, SublimeText, o unos más avanzado como Visual Studio Code o IDEs como Eclipse, Netbeans, WebStorn.
No entiendo muy bien a que te refieres con que use un navegador como interprete.

EdePC

Que editor de texto o código o IDE estás utilizando para escribir tu código? Ese código es solo texto que guardas como archivo.html. o archiv.css o archivo.js, luego necesitas interpretar ese código abriéndo el archivo.html con un navegador web como chrome, firefox, edge, etc y así ver los resultados.

Claro que dependerá hacia donde estás dirigiendo tu código, es decir, si es para Web, Node.js, etc.

Los errores que muestras yo los entendería como que estás escribiendo código NO dirigido a Web porque no te reconoce los Objetos Web (window, prompt, console, etc) o tu Editor de Código no está configurado para esto.

@XSStringManolo

 Window es el objeto global del navegador. Si usas tu código fuera del navegador, no puedes acceder a los métodos de window porque no existe. alert() es una forma corta de escribir window.alert();


Corrigue el parseint por parseInt.
Añade los ; que te faltan. No conoces la norma al completo asique nunca los omitas.
Vuelves a lo mismo de solo comprobar si el número introducido solo es menor de 0. Se pueden meter caracteres y demás en tu programa y no manejas los errores.
Realizas 2 llamadas consecutivas a una función para sacar el mismo resultado. Es mejor usar una variable temporal para almacenar el resultado con una sola llamada.
document.write se carga el documento actual. Crea un nuevo elemento y añádelo al actual.



















rubcr

Cita de: EdePC en 12 Mayo 2020, 02:36 AM
Que editor de texto o código o IDE estás utilizando para escribir tu código? Ese código es solo texto que guardas como archivo.html. o archiv.css o archivo.js, luego necesitas interpretar ese código abriéndo el archivo.html con un navegador web como chrome, firefox, edge, etc y así ver los resultados.

Claro que dependerá hacia donde estás dirigiendo tu código, es decir, si es para Web, Node.js, etc.

Los errores que muestras yo los entendería como que estás escribiendo código NO dirigido a Web porque no te reconoce los Objetos Web (window, prompt, console, etc) o tu Editor de Código no está configurado para esto.
Uso Brackets,  no sé  si lo conoces.

rub'n

#6
Cita de: rubcr en 12 Mayo 2020, 09:51 AM
Uso Brackets,  no sé  si lo conoces.

Es que no se ve bien ese ide por el pantallazo que le diste.

Y de paso con ese IDE debes familiarizarte bien, ya que el mismo, te ayuda, te guía, cuando tengas errores de distintos tipos.


rubn0x52.com KNOWLEDGE  SHOULD BE FREE!!!
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen

EdePC

Personalmente considero a Eclipse y a Brackets obsoletos, si no utilizas la Vista previa dinámica de Brackets mejor usa otro editor como SublimeText o Visual Studio Code.

Bracktes utiliza JSLint y ESLint para javascript, estos prácticamente tienen su propia sintáxis y son estos lo que te están dando estos problemas, puedes rebuscar entre los archivos de configuración de Bracktes para deshabilitarlos, configurarlos o simplemente no hacerles caso.

Si quieres seguir la sintáxis de estos XXLint puedes utilizar lo siguiente:

Código (javascript) [Seleccionar]
this.window.onload = function main() {
  'use strict';
  var numero = this.prompt("Introduce un número entero positivo");
  var numero1 = parseInt(numero);
  var numeros = "";
  if (numero < 0) {
    this.alert("El numero no es válido, vuelve a introducir un valor");
  } else {
    this.window.console.log("Calculando el factorial de " + numero);
    this.window.console.log("Resultado " + Factorial(numero1));
    this.window.document.write(Factorial(numero1));
  }
};