Spacetime

编程之家收集整理的这个编程导航主要介绍了Spacetime编程之家,现在分享给大家,也给大家做个参考。

Spacetime

Spacetime 介绍

Spacetime使用一种轻量级的方式来操纵,遍历,比较和格式化地球上任意地区的日期和时间。  

特色:

获取/设置 远程时区的日期很时间

全球支持夏令时闰年+秒,和半球时间

按季度、季节、月份和星期计算

远程日期比较

ES2015 js编写,使用ES5发布,测试了 Node 和浏览器

只有 35KB (压缩后12KB)

经过良好测试,Apache 2.0 授权

安装

npm install spacetime --save

测试

在 Node 中:

npm test

格式化日期

Spacetime 允许以一堆默认格式快速渲染日期和时间。你可以通过直接调用 .format() 而不使用参数。

如果你希望传递所需的格式:

s.format('day-short')

// 'Sat'

s.format('date-ordinal')

// '26th'

Spacetime 支持灵活的,以人为本的格式,而不是经典的 Unix 格式化样式(即 'ddd hA' )。

方法

* 'day' - 'Friday'

* 'day-short' - 'Fri'

* 'date' - '5'

* 'date-ordinal' - '5th'

* 'month' - 'January'

* 'month-short' - 'Jan'

* 'time' - '4:59pm'

* 'time-24h' - '16:59'

* 'year' - '2018'

* 'year-short' - "'18"

* 'numeric-us' - '01/05/2018'

* 'numeric-uk' - '05/01/2018'

* 'numeric-cn' - '2018/01/05'

* 'iso' - '2018-01-05T16:59:33:152Z'

* 'iso-short' - '2018-01-05'

* 'iso-utc' - '2018-01-05T14:59:33.152Z'

* 'nice' - 'January 5th,4:59pm'

* 'nice-day' - 'Friday January 5th,4:59pm'

* 'nice-short' - 'Jan 5th,4:59pm'

* 'full' - 'Friday January 5th,2018'

* 'full-short' - 'Fri Jan 5th,2018'

* 'ordinal' - '5th'

* 'date-short' - '5'

* 'time-12h' - '4:59pm'

* 'time-h12' - '4:59pm'

* 'time-h24' - '16:59'

* 'numeric' - '01/05/2018'

* 'mdy' - '01/05/2018'

* 'dmy' - '05/01/2018'

* 'ymd' - '2018/01/05'

* 'little-endian' - '05/01/2018'

* 'big-endian' - '2018/01/05'

输入日期

你可以使用各种输入创建一个特定的日期+时间,取决于你的使用习惯。

Spacetime 支持所有 JavaScript 日期输入格式:

ISO Date "2015-03-25"

Short Date "03/25/2015" or "2015/03/25"

Long Date "Mar 25 2015" or "25 Mar 2015"

Full Date "Wednesday March 25 2015"

Epoch Time 1493042538

以及一些更结构化的格式,如:

// 数组

spacetime([2019,1,6,30]) // January 1st,2019,6:30am

// 基于对象

spacetime({year:2016,month:1,date:3})// February 1st,2016

与 JavaScript Date 对象一样,当有信息丢失时,Spacetime 将使用你当前的本地时间填充缺少的信息:

// Will be June,with your current year,date,and time

spacetime({month:'june'})

// June 3rd,2017,12:02pm (or whatever)

数组和基于对象的输入使用基于0的月份,因为假设它们在软件中动态使用。一如以往,每个月的日期都是以1为基础的。

API

var spacetime=require('spacetime')

s = spacetime.now() //现在

s = spacetime.today() // 今天早上

s = spacetime.tomorrow() // 明天早上

// 输入日期

s = spacetime(1489520157) // 特定时间,例如1970-01-01 00:00:00 UTC

s = spacetime([2017,5,2]) // yyyy,m,d (月的基数是0,天的基数是1)

s = spacetime('July 2,2017 5:01:00') // 国际标准 ISO 表示方法

// 远程日期

s = spacetime(1489520157,'Canada/Pacific')

// 获取/设置方法

s.date() // 14

s.year() // 2017

s.season() // Spring(季节)

s.hour(5) // 更改为上午5点

s.date(15) // 更改为第15

s.day('monday') // 更改为星期一(本周)

s.month('march') // 更改为3月1日(今年)

s.quarter(2) // 更改为4月1日

// 加/减方法

s.add(1,'week')

s.add(3,'quarters')

s.subtract(2,'months').add(1,'day')

// 时区元数据

s.timezone().name // 'Canada/Eastern' (推测或显式)

s.timezone().hemisphere // 北半球

s.timezone().current.offset // -240 (以分钟为单位)

s.timezone().current.isDst // True

// 比较

let d = spacetime([2017,2])

let start = s.clone()

let end = s.clone()

start.subtract(1,'milliseconds')

end.add(1,'milliseconds')

// gt/lt/equals

s.isAfter(d) // True

s.isEqual(d) // False

s.isBefore(d) // False

s.isBetween(start,end) // True

// 单位比较

s.isSame(d,'year') // True

s.isSame(d,'date') // False

s.diff(d,'day') // 5

s.diff(d,'month') // 0

// 格式化日期+时间

s.format('time') // '5:01am'

s.format('numeric-uk') // 02/03/2017

s.format('month') // 'April'

s.format('month-short') // 'Apr'

// 日历

s.startOf('day') // 12:00am

s.startOf('month') // 12:00am,April 1st

s.endOf('quarter') // 11:59:59pm,June 30th

// 基于百分比的信息

s.progress().month = 0.23 // 一个季度的第一个月

s.progress().day = 0.48 // 几乎中午

s.progress().hour = 0.99 // 59分59秒

// 其他功能

s.goto('Australia/Brisbane') // 同时转入新的时区

s.clone() // 创建一个副本

s.isValid() // 验证(9月32日 → false)

网站地址:https://spencermountain.github.io/spacetime/

GitHub:https://github.com/spencermountain/spacetime

网站描述:轻量级的时区处理JavaScript库

Spacetime官方网站

官方网站:https://spencermountain.github.io/spacetime/

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

相关文章

scalable.js,一款可以使任何HTML元素动态缩放适合父元素的js...
Pica,使用JS进行快速高品质图像缩放
react-dates,React 日期组件
date-fns,轻量级的JavaScript 日期工具库
WOW.js,一款效果炫酷的元素在页面滚动时展示CSS3动画的JS插件
Pikaday,一个 轻量级、无依耐Js日期选择器