Función que permite copiar un objeto fecha por valor y no por referencia.
Al llevar un tiempo trabajando con JavaScript, nos percatamos de que este lenguaje presenta un comportamiento algo peculiar y es que resulta ser que cuando asignamos a una varible un valor de tipo String o Boolean, se crea una copia de dicho objeto. Sin embargo, cuando asignamos un Arreglo o un Objeto, se crea una referencia a dicho valor y no una copia, lo cual resulta un dolor de cabeza ya que si realizamos una modificación en una de nuestras supuestas copias de un determinado objeto, el original se ve afectado.
Por tal motivo, el presente snippet pretende brindar una manera de copiar una fecha en la cual se copie el objeto completamente y no sea una simple copia de una referencia a un valor.
- [Navegador] - Navegador que pueda interpretar javascript.
En el proyecto que estés trabajando
- Copia el código de la función en alguno de tus archivos javascript.
- Asegúrate de que el archivo en el que copias la función se ejecute antes que toda tu lógica, para que de este modo la funcion este disponible para todo tu código.
'use strict';
Date.prototype.copy = function () {
return new Date(this.getTime());
}
// Copia de esta manera
// Ejemplo
var originalDate = new Date();
var copyDate = originalDate.copy();
- etnassoft:
- Autor del snippet: Tonatiuh García @Sr_Sol
- Los snippets pertenecen a KamikazeLab