Manejo de la zona horaria en JavaScript-SpaceTime
| Autor: | spencermountain |
|---|---|
| Views Total: | 1,724 |
| Sitio oficial: | Ir a la web |
| Actualizado: | April 14, 2019 |
| Licencia: | MIT |
Vista prévia
Descripción
SpaceTime es una biblioteca de JavaScript pura que se utiliza para manipular, atravesar, comparar y formatear fechas y horas en todo el planeta tierra.
Características
- Obtener/establecer fechas y horas en zonas horarias remotas
- Soporte global para horario de verano, años bisiestos + segundos, y hemisferios
- Oriente por trimestre, temporada, mes y semana
- Comparación de fechas remotas
- Escrito en ES2015 JS, publicado como ES5, probado para node y el navegador
Instalación
npm install spacetime --save
Funcionamiento
Incluya el archivo JavaScript principal en la página HTML.
<script src="https://unpkg.com/spacetime"></script>
Haz una nueva cita en Nueva York.
var d = spacetime('March 8 2017', 'America/New_York') API Methods.
// Some helpers
s = spacetime.now()
s = spacetime.today() // This morning
s = spacetime.tomorrow() // Tomorrow morning
// Date inputs
s = spacetime(1489520157) // Epoch
s = spacetime([2017, 5, 2]) // yyyy, m, d (zero-based months, 1-based days)
s = spacetime('July 2, 2017 5:01:00') // ISO
// Remotely understood date
s = spacetime(1489520157, 'Canada/Pacific')
// Get/set methods
s.date() // 14
s.year() // 2017
s.season() // Spring
s.hour(5) // Change to 5am
s.date(15) // Change to the 15th
s.day('monday') // Change to (this week's) monday
s.month('march') // Change to (this year's) March 1st
s.quarter(2) // Change to April 1st
// Add/subtract methods
s.add(1, 'week')
s.add(3, 'quarters')
s.subtract(2, 'months').add(1,'day')
// Timezone metadata
s.timezone().name // 'Canada/Eastern' (either inferred or explicit)
s.timezone().hemisphere // North
s.timezone().current.offset // -240 (in minutes)
s.timezone().current.isDst // True
// Comparisons
let d = spacetime([2017, 5, 2])
// gt/lt/equals
s.isAfter(d) // True
s.isEqual(d) // False
s.isBefore(d) // False
// Comparison by unit
s.isSame(d, 'year') // True
s.isSame(d, 'date') // False
s.diff(d, 'day') // 5
s.diff(d, 'month') // 0
// Date + time formatting
s.format('time') // '5:01am'
s.format('numeric-uk') // 02/03/2017
s.format('month') // 'April'
s.format('month-short') // 'Apr'
// Calendar-sensitive movement
s.startOf('day') // 12:00am
s.startOf('month') // 12:00am, April 1st
s.endOf('quarter') // 11:59:59pm, June 30th
// Percentage-based information
s.progress().month = 0.23 // We're a quarter way through the month
s.progress().day = 0.48
// Almost noon
s.progress().hour = 0.99
// 59 minutes and 59 seconds
// Misc functions
s.goto('Australia/Brisbane') // Roll into a new timezone, at the same moment
s.clone() // Make a copy
s.isValid() // Sept 32nd â false Registro de cambios
v5.7.0 (04/14/2019)
- Fix diff/desde problemas, y añadir 0 bug
v5.6.0 (04/08/2019)
- admiten tipos de typescript por Jacob Craig
- utilizar una zona horaria dada cuando se le da un objeto espacio-tiempo como entrada
- agrega. cada (unidad, a) método
- establecer UTC como zona horaria de reserva predeterminada
v5.5.0 (03/28/2019)
- actualizar zonefile a 2019
v5.4.0 (03/01/2019)
- todos los métodos ahora inmutables de forma predeterminada.
- mover UNIX-formating fuera de. Format () en. unixFmt ()
- admiten nuevas plantillas de formato de estilo de oclock {hour}
- cambiar la respuesta default. Format () a aaaa-mm-dd
- nombres de mes y día en mayúsculas en. dayName ()
- admiten nombres de ciudades, EST, PDT, etc. como entrada
- establecer el valor predeterminado Silent: true para evitar el registro no deseado
v5.3.0 (02/25/2019)
- todos los métodos ahora inmutables de forma predeterminada
- mover UNIX-formating fuera de. Format () en. unixFmt ()
- admiten nuevas plantillas de formato de estilo de oclock {hour}
- cambiar la respuesta default. Format () a aaaa-mm-dd
- nombres de mes y día en mayúsculas en. dayName ()
- admiten nombres de ciudades, EST, PDT, etc. como entrada
- establecer el valor predeterminado Silent: true para evitar el registro no deseado
v5.2.2 (02/23/2019)
- Corregido error de zona horaria
- Corrija los problemas de zona horaria de media hora
v5.2.1 (01/09/2018)
- semana corrección
v5.1.0 (12/15/2018)
- TitleCase Short-formas de meses, días en. Format ()
v5.0.3 (12/14/2018)
- todos los métodos ahora inmutables de forma predeterminada. — existing code will now need to be s = s.add(1,'day') — (instead of s.add(1,'day'))
- mover UNIX-formating fuera de. Format () en. unixFmt ()
- admiten nuevas plantillas de formato de estilo de oclock {hour}
- cambiar la respuesta default. Format () a aaaa-mm-dd
- nombres de mes y día en mayúsculas en. dayName ()
- admiten nombres de ciudades, EST, PDT, etc. como entrada
- establecer el valor predeterminado Silent: true para evitar el registro no deseado
v4.5.0 (11/24/2018)
- actualizar algunas compensaciones TZ en el este de Rusia
- actualizaciones de 2019 fechas de verano palestinas
- correcciones para los métodos de establecedor inmutable que faltan
v4.4.0 (09/02/2018)
- interpretación de swap de los desplazamientos de fecha ISO-0500 â & #134; & #146; + 5 offset
v4.3.0 (07/28/2018)
- Analizar una nueva fecha en formato RFC822 cambia el desplazamiento (+/-)
v4.2.2 (06/22/2018)
- agrega el método. Extend () para crear plugins
v4.2.1 (06/02/2018)
- fijar bug de la hora de Rusia, apoyo 3-term zonas horarias
v4.2.0 (05/31/2018)
- agrega el método isBetween ()





