Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: MiguelCanellas en 10 Agosto 2019, 04:20 am



Título: [Pregunta]: Editar un dato de javascript/Jquery
Publicado por: MiguelCanellas en 10 Agosto 2019, 04:20 am
Buenas noches

Quería saber si existe alguna manera de editar un dato usado en un fragmento de código js y jquery.
La idea es la siguiente, al momento de cargar la pagina tengo esto

Código
  1. $(".boton").click(function()
  2. {
  3.      var dato = 1;
  4.      alert(dato);
  5. });
  6.  

Quisiera saber como podría hacer que con otro código JS pueda editar ese dato por otro número.

Muchas gracias.


Título: Re: [Pregunta]: Editar un dato de javascript/Jquery
Publicado por: @XSStringManolo en 10 Agosto 2019, 04:36 am
Buenas noches

Quería saber si existe alguna manera de editar un dato usado en un fragmento de código js y jquery.
La idea es la siguiente, al momento de cargar la pagina tengo esto

Código
  1. $(".boton").click(function()
  2. {
  3.      var dato = 1;
  4.      alert(dato);
  5. });
  6.  

Quisiera saber como podría hacer que con otro código JS pueda editar ese dato por otro número.

Muchas gracias.
Si necesitas deflarar la variable con la función usa:
Código
  1. $(".boton").click(function()
  2. {
  3.      window.dato = 1;
  4.      alert(dato);
  5. });
  6. alert(dato);
  7.  

En caso que te de igual usarla de variable global simplemente declara la variable antes que el código que la va a utilizar.
Código
  1. //script
  2. //variables globales:
  3. var dato = 1;
  4.  
  5. //funciones:
  6. $(".boton").click(function()
  7. {
  8.      ++dato;
  9.      alert(dato);
  10. });
  11. ++dato;
  12. alert(dato);
  13.  


script
var dato = 1;




Título: Re: [Pregunta]: Editar un dato de javascript/Jquery
Publicado por: MinusFour en 10 Agosto 2019, 05:18 am
Si lo que quieres es que tu función sea configurable, hay un montón de formas de hacerlo. Por ejemplo puedes poner cosas con "data":

Código
  1. //valor inicial
  2. $('.button').data('dato', '1');
  3.  
  4. //Lo usas así
  5.  
  6. $(".boton").click(function()
  7. {
  8.      var dato = $('.button').data('dato');
  9.      alert(dato);
  10. });
  11.  
  12. //Y si quieres cambiar el dato:
  13. $('.button').data('dato', tuvaloraaqui);

Por supuesto también puedes usar objetos o funciones o lo que sea.

Si tu pregunta es, si puedes cambiar el valor de una variable local a una función con algún código en javascript, eso no se puede hacer. A lo mucho el runtime te permite pausar y quizás hacer cambios sobre el entorno de ejecución actual, pero nada que puedas hacer desde otro script o modulo.