Use el objeto incorporado estándar de JavaScript Fecha

Muchos lenguajes de desarrollo tienen objetos Date incorporados, y JavaScript no es una excepción. Este artículo está extraído de la fecha del objeto incorporado estándar de JavaScript para
crear una instancia de fecha de JavaScript, que presenta un momento en el tiempo. Los objetos de fecha se basan en la marca de tiempo de Unix, que es el número de milisegundos que han pasado desde el 1 de enero de 1970 (UTC).
Demostración de JavaScript: constructor de fechas

const date1 = new Date('December 17, 1995 03:24:00');
// Sun Dec 17 1995 03:24:00 GMT...

const date2 = new Date('1995-12-17T03:24:00');
// Sun Dec 17 1995 03:24:00 GMT...

console.log(date1 === date2);
// expected output: false;

console.log(date1 - date2);
// expected output: 0

Para obtener una descripción y uso específicos, consulte el objeto incorporado estándar de JavaScript Fecha

Ejemplo: varios métodos para crear un objeto de fecha

El siguiente ejemplo muestra los diversos métodos utilizados para crear un objeto de fecha.
Nota: Debido a las diferencias e inconsistencias del navegador, se recomienda encarecidamente no utilizar el constructor de fecha (y Date.parse, que son equivalentes) para analizar las cadenas de fecha.

var today = new Date();
var birthday = new Date('December 17, 1995 03:24:00');
var birthday = new Date('1995-12-17T03:24:00');
var birthday = new Date(1995, 11, 17);
var birthday = new Date(1995, 11, 17, 3, 24, 0);

Ejemplo: mapear años de dos dígitos a 1900-1999

Para crear y obtener el año entre 0 y 99, se deben usar los métodos Date.prototype.setFullYear () y Date.prototype.getFullYear ().

var date = new Date(98, 1); // Sun Feb 01 1998 00:00:00 GMT+0000 (GMT)

// 已弃用的方法, 同样将 98 映射为 1998
date.setYear(98);           // Sun Feb 01 1998 00:00:00 GMT+0000 (GMT)

date.setFullYear(98);       // Sat Feb 01 0098 00:00:00 GMT+0000 (BST)

Ejemplo: calcular el tiempo transcurrido

El siguiente ejemplo muestra cómo calcular la diferencia horaria entre dos objetos de fecha con precisión de milisegundos:

Debido a las diferentes duraciones de diferentes días, meses y años (las diferentes duraciones de los días provienen del cambio del horario de verano), el uso de unidades superiores a segundos, minutos y horas para expresar el tiempo transcurrido encontrará muchos problemas, y se requiere una investigación detallada antes de su uso.

  • 1. Usar objetos de fecha
// 使用 Date 对象
var start = Date.now();

// 调用一个消耗一定时间的方法:
doSomethingForALongTime();
var end = Date.now();
var elapsed = end - start; // 以毫秒计的运行时长
  • 2. Use el método de creación incorporado
// 使用内建的创建方法
var start = new Date();

// 调用一个消耗一定时间的方法:
doSomethingForALongTime();
var end = new Date();
var elapsed = end.getTime() - start.getTime(); // 运行时间的毫秒值
  • 3. Escribe una función y prueba el tiempo que lleva
// to test a function and get back its return
function printElapsedTime (fTest) {
    var nStartTime = Date.now(),
        vReturn = fTest(),
        nEndTime = Date.now();
    alert("Elapsed time: " + String(nEndTime - nStartTime) + " milliseconds"); 
    return vReturn;
}
yourFunctionReturn = printElapsedTime(yourFunction);

Nota: en los navegadores que admiten la función de tiempo de alta resolución de la API de rendimiento web, el tiempo transcurrido proporcionado por Performance.now () es más confiable y preciso que Date.now ().

  • 4. Obtenga el número de segundos que han pasado desde la hora de inicio de Unix
var seconds = Math.floor(Date.now() / 1000);

Tenga en cuenta que debe devolver un número entero (solo la división no es un número entero), y debe devolver el número real de segundos que han transcurrido (por lo que se usa Math.floor () en lugar de Math.round ()).

131 artículos originales publicados · Me gusta 38 · Visita 990,000+

Supongo que te gusta

Origin blog.csdn.net/ccf19881030/article/details/104633214
Recomendado
Clasificación