ExtJs的Date格式字符代码
2010-12-30 17:11
726 查看
Date类在ExtJs中提供的方法算是少的。但是,另外一方面,因为历史原因,现在Date无论在哪个语言里面,表征其格式变量的字母都很多。本节就着重讲解Date的日期格式表示。这些都是ExtJs API中的内容,如果有中文版的可以直接跳过这里了。如果需要继续看的,请注意,其中的格式字符时大小写敏感的。
年
Y 年的数字表示,4位数字,例如1999
y 年的两位数字表示,例如99或03
o ISO-8601年的数字表示(与Y相同,但是如果ISO周的数W属于前一年或者下一年,那么就用那个年)例如1998或者2004
L 是否是闰年。1表示是闰年,否则0
月
F 月份的全称。Januray到December
M 月份文本的简写。Jan到Dec
m 月份的数字表示,0开始。例如 01 到 12
n 月份的数字表示,不以0开头。1到12
周
D 表示星期中天的缩写。例如,Mon到Sun
l 跟D一样,不过是全称,例如Sunday到Saturday
w 一周7天的数字表示0(周日)到6(周六)
N ISO-8601一周7天的数字表示。1表示Monday(周一)到7表示Sunday(周日)
W ISO-8601一年中周的数字表示。每周从周一开始计的。所以有01-53,顺序标记了53个周。
日
d 以0开头的两位数字,表征了一个月中的天。例如,01到31
j 跟d的内容一样,只不过不用0开头。例如,1到31
t 给定月份内的天数。28到31
S 英文中叙述的后缀,用来表示一个月的天时候用,2个字符,跟j可以良好配合。例如,st,nd,rd,或者th(1st,2nd,3rd,4th)
z 一年365天的数字表示,从0开始。即0-364,闰年则是0-365
上下午
a AM和PM的小写。例如,am或者pm
A AM和PM的大写。例如,AM或者PM
时
g 不以0开头的12小时格式,1到12
h 以0开头的12小时格式,01到12
G 不以0开头的24小时格式,0到23
H 以0开头的24小时格式,00到23
分
i 以0开头的分钟表示,00到59
秒
s 以0开头的秒表示,00到59
u 秒的小数部分。至少一位数字,多了不限。例如001表示0.001秒。999表示0.999秒。12312312表示0.12312312秒。
U 从Unix纪元开始(January 1 1970 00:00:00 GMT) 到现在的秒。例如1193432466
Z 当前时区与UTC相比相差的秒数,如果在UTC西边就是负数,东边就是正数。-4300到50400
时区
O 与格林威治时间的时间差。例如+1030
P 带冒号的与格林威治时间的时间差。例如-08:00
T 运行当前代码机器所处的时区的缩写。例如EST,MDT,PDT
c ISO8601的日期表示(注意,如果秒有小数部分,则至少1位数字,多了不限。参见www.w3.org/TR/NOTE-datetiem获取更多内容。例子,2007-04-17T15:19:21+08:00 or 2008-03-16T16:18:22Z or 2009-02-15T17:17:23.9+01:00 or 2010-01-14T18:16:24,999876543-07:00
以上就是Date的格式符。在使用的过程中要特别注意了,因为有的时候我们自定义格式的时候,会遇到一些单词中的字母跟格式符一致的情况。当然这个时候我们需要输出的是单词而不是某个Date所表示的内容。素以这个时候必须使用转义字符来处理。例如:
var dt = new Date('1/10/2007 03:05:01 PM GMT-0600');
document.write(dt.format('Y-m-d')); // 2007-01-10
document.write(dt.format('F j, Y, g:i a')); // January 10, 2007, 3:05 pm
document.write(dt.format('l, \\t\\he jS \\of F Y h:i:s A')); // Wednesday, the 10th of January 2007 03:05:01 PM
下面在给出一个日期样式的对象,API中有这个,非常好用。虽然它本身不是Date中的一部分。但是灵活应用的话会给程序的书写带来很大的便利。
复制代码 代码如下:
Date.patterns = {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
};
用例:
复制代码 代码如下:
var dt = new Date();
document.write(dt.format(Date.patterns.ShortDate));
年
Y 年的数字表示,4位数字,例如1999
y 年的两位数字表示,例如99或03
o ISO-8601年的数字表示(与Y相同,但是如果ISO周的数W属于前一年或者下一年,那么就用那个年)例如1998或者2004
L 是否是闰年。1表示是闰年,否则0
月
F 月份的全称。Januray到December
M 月份文本的简写。Jan到Dec
m 月份的数字表示,0开始。例如 01 到 12
n 月份的数字表示,不以0开头。1到12
周
D 表示星期中天的缩写。例如,Mon到Sun
l 跟D一样,不过是全称,例如Sunday到Saturday
w 一周7天的数字表示0(周日)到6(周六)
N ISO-8601一周7天的数字表示。1表示Monday(周一)到7表示Sunday(周日)
W ISO-8601一年中周的数字表示。每周从周一开始计的。所以有01-53,顺序标记了53个周。
日
d 以0开头的两位数字,表征了一个月中的天。例如,01到31
j 跟d的内容一样,只不过不用0开头。例如,1到31
t 给定月份内的天数。28到31
S 英文中叙述的后缀,用来表示一个月的天时候用,2个字符,跟j可以良好配合。例如,st,nd,rd,或者th(1st,2nd,3rd,4th)
z 一年365天的数字表示,从0开始。即0-364,闰年则是0-365
上下午
a AM和PM的小写。例如,am或者pm
A AM和PM的大写。例如,AM或者PM
时
g 不以0开头的12小时格式,1到12
h 以0开头的12小时格式,01到12
G 不以0开头的24小时格式,0到23
H 以0开头的24小时格式,00到23
分
i 以0开头的分钟表示,00到59
秒
s 以0开头的秒表示,00到59
u 秒的小数部分。至少一位数字,多了不限。例如001表示0.001秒。999表示0.999秒。12312312表示0.12312312秒。
U 从Unix纪元开始(January 1 1970 00:00:00 GMT) 到现在的秒。例如1193432466
Z 当前时区与UTC相比相差的秒数,如果在UTC西边就是负数,东边就是正数。-4300到50400
时区
O 与格林威治时间的时间差。例如+1030
P 带冒号的与格林威治时间的时间差。例如-08:00
T 运行当前代码机器所处的时区的缩写。例如EST,MDT,PDT
c ISO8601的日期表示(注意,如果秒有小数部分,则至少1位数字,多了不限。参见www.w3.org/TR/NOTE-datetiem获取更多内容。例子,2007-04-17T15:19:21+08:00 or 2008-03-16T16:18:22Z or 2009-02-15T17:17:23.9+01:00 or 2010-01-14T18:16:24,999876543-07:00
以上就是Date的格式符。在使用的过程中要特别注意了,因为有的时候我们自定义格式的时候,会遇到一些单词中的字母跟格式符一致的情况。当然这个时候我们需要输出的是单词而不是某个Date所表示的内容。素以这个时候必须使用转义字符来处理。例如:
var dt = new Date('1/10/2007 03:05:01 PM GMT-0600');
document.write(dt.format('Y-m-d')); // 2007-01-10
document.write(dt.format('F j, Y, g:i a')); // January 10, 2007, 3:05 pm
document.write(dt.format('l, \\t\\he jS \\of F Y h:i:s A')); // Wednesday, the 10th of January 2007 03:05:01 PM
下面在给出一个日期样式的对象,API中有这个,非常好用。虽然它本身不是Date中的一部分。但是灵活应用的话会给程序的书写带来很大的便利。
复制代码 代码如下:
Date.patterns = {
ISO8601Long:"Y-m-d H:i:s",
ISO8601Short:"Y-m-d",
ShortDate: "n/j/Y",
LongDate: "l, F d, Y",
FullDateTime: "l, F d, Y g:i:s A",
MonthDay: "F d",
ShortTime: "g:i A",
LongTime: "g:i:s A",
SortableDateTime: "Y-m-d\\TH:i:s",
UniversalSortableDateTime: "Y-m-d H:i:sO",
YearMonth: "F, Y"
};
用例:
复制代码 代码如下:
var dt = new Date();
document.write(dt.format(Date.patterns.ShortDate));
相关文章推荐
- ExtJs的Date格式字符代码
- extjs实现年月格式的日期选择(DatePicker)
- oracle格式代码出现两次,文字与格式字符串不匹配
- ExtJS中文乱码之GBK格式编码解决方案及代码
- 正确配置Eclipse的java代码的字符格式
- 【Linux】【CGI】【FAQ】代码中字符格式问题——类似 error: stray ‘\357’ in program
- 转: 日期格式参考extjs api文档中的Date类型
- PHP的date()函数所支持的格式代码
- sql 更新date字段报“格式代码出现两次”错误解决方法.
- Extjs4 中date时间格式的问题
- java字符串怎么转换成时间date格式,并把date再转换成毫秒
- JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
- Oracle:ORA-01810:格式代码出现两次 日期格式、时间格式、to_date错误
- ‘’文字与格式字符串不匹配‘’和“格式代码出现俩次”和时间传到前台不符合格式
- Extjs TimeField 显示正常时间格式的代码
- 基础(冒泡排序+汉字转换+datagrid+date格式加一年+个性代码)
- 总结SimpleDateFormat类的格式字符
- extjs json date 格式的完美解决方案
- ExtJS中文乱码之GBK格式编码解决方案及代码
- 下列代码可以实现把Java的CST格式的时间字符串转为为Date对象和所需要的日期时间格式!