Foros del Web » Programando para Internet » Javascript »

Dar de alta una variable

Estas en el tema de Dar de alta una variable en el foro de Javascript en Foros del Web. Hola, Tengo un script en un archivo externo.js, y tiene una variable ahí dada de alta. El resultado final de la función lo llamo desde ...
  #1 (permalink)  
Antiguo 27/03/2003, 14:43
Avatar de Rafael
Modegráfico
 
Fecha de Ingreso: marzo-2003
Mensajes: 9.028
Antigüedad: 21 años, 8 meses
Puntos: 1826
Dar de alta una variable

Hola, Tengo un script en un archivo externo.js, y tiene una variable ahí dada de alta. El resultado final de la función lo llamo desde la página html con un document.write.

Mi pregunta es ¿Puedo darla de alta desde el archivo.html esa variable para que no tenga que modificar el archivo.js, y pueda tener digamos un dato en la variable en una página y otro dato en otra página, jalando el mismo.js?

Gracias.
  #2 (permalink)  
Antiguo 27/03/2003, 14:49
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Hola Rafael:

No te entendí bien, pero si pones el script en cada página, las variables son diferentes...

Por lo que dices, supongo que entre las páginas hay algún vínculo, así que en vez de duplicar el script, puedes acceder desde una de las páginas al valor de la variable de la otra usando ese vínculo... (parent, opener... target...)

Tal vez con más datos pueda darte una respuesta más atinada...

Saludos
  #3 (permalink)  
Antiguo 28/03/2003, 06:52
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 3 meses
Puntos: 381
Cita:
¿Puedo darla de alta desde el archivo.html esa variable para que no tenga que modificar el archivo.js, y pueda tener digamos un dato en la variable en una página y otro dato en otra página, jalando el mismo.js?
Si.

Pero declara el valor de esa variable detrás de donde llamas al archivo js.

Cuando incluyes un archivo .js es lo mismo que si el código de ese archivo estuviera en la página que lo llama.

Así, si después de incluír tu .js (que es como si estuviera escrito en el lugar donde pones el tag que lo incluye) le re-defines la variable será simplemente como si le cambias el valor inicial declarado en el archivo .js
  #4 (permalink)  
Antiguo 28/03/2003, 10:57
Avatar de Rafael
Modegráfico
 
Fecha de Ingreso: marzo-2003
Mensajes: 9.028
Antigüedad: 21 años, 8 meses
Puntos: 1826
Todavía no se deja.

Gracias a ambos, pero no se deja.
Me explico mejor:

Tengo un script de cuenta regresiva para una fecha esperada, digamos para año nuevo 2004; este está en un archivo.js , que además contiene algunos if , como si ya pasó el evento o no.

la fecha inicial la doy como variable:

var FechaEsperada = new Date("01/01/2004");
...
... y el resultado final lo meto en:
var Evento = (Resultado del Script)


Dentro de una página html llamo el script del archivo.js en el head , y el resultado en algún lugar de body con:

document.write (Evento)

Hasta ahí todo va bien y funciona perfecto. Pero por manías perfeccionistas (que de seguro saben de que hablo), y por flexibilidad, quisiera dar de alta la var FechaEsperada
en la página html, para que el webmaster no tenga que tocar el archivo.js y además para que pueda asignarse una fecha diferente en cada página.

Ya intenté asignar null en el .js, asignarla antes del src="archivo.js", asignarla después, antes del document.write, por todos lados y no se deja, me marca error al asignar la variable.

La duda se va ampliando a una general ¿Cómo se relacionan los scripts de una página entre sí?, ¿hay alguna regla como las de las CSS?.
  #5 (permalink)  
Antiguo 28/03/2003, 12:19
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola, Rafael. Un pequeño ejemplo.

Tengo este archivo, llamado a.js:
Código:
var a = 1
function sumar (num) {
	num++;
	return num
}
Y esta página:
Código:
<html>
<head>
<script language="JavaScript" src="a.js"></script>
<script>var a = 15;</script>
</head>
<body>
<input type="button" onClick="alert(sumar(a))">
</body>
</html>
Si pulso el botón, en el mensaje de alerta sale "16", es decir ha tomado el valor que he declarado en la página y no el del archivo .js

Espero que te sirva de ayuda. Saludos,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:45.