注意:我们不赞成config.locale,config.dataformat,以及DataType.Data.Locale。这些属性将在3.4.0版本中被移除。
DataType.Data.format()将使用使用格式化的字符串作为输出。一些格式可以本地化的,所以,应该指定YUI实例的lang属性。
YUI({lang:"zh-CN"}).use("datatype-date", function(Y) { // 显示格式化的当前时间和日期。 //%x %X的意思分别是现实日期和时间。更多格式化选项见下面。 alert(Y.DataType.Date.format(new Date(), {format:"%x %X"})); });
浏览器中显示结果为:
这个模块支持许多内嵌语言。
a:一个从周日到周六的简短周次名
A:一个从周日到周六的全周次名
b:一月到十二月的简称
B:一月到十二月的全程
c:日期和时间的呈现形式
p:AM和PM
P:同p,但是是小写
x:日期(没有时间)
X:时间(没有日期)
YUI().use("intl", "datatype-date-format", function(Y) { // provide data for Punjabi in India印第安啥地方? Y.Intl.add("datatype-date-format", "pa-IN", { "a":["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨੀ."], "A":["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨੀਚਰਵਾਰ"], "b":["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ"], "B":["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ"], "c":"%a, %Y %b %d %l:%M:%S %p %Z", "p":["ਸਵੇਰੇ","ਸ਼ਾਮ"], "P":["ਸਵੇਰੇ","ਸ਼ਾਮ"], "x":"%d/%m/%Y", "X":"%l:%M:%S %p" }); // switch to Punjabi Y.Intl.setLang("datatype-date-format", "pa-IN"); // now dates are formatted in Punjabi alert(Y.DataType.Date.format(new Date(), {format:"%A %x %X"})); });
因为编码不对头,所以显示乱码,但从图中可以看出,日期和时间都是按照%x %X格式化的。
至于intl这个模块:就是internationalization工具,支持管理本地资源,例如字符串和格式的结构。下一节讲。
var date1 = Y.DataType.Date.parse("December 17, 1995 03:24:00"); //读出日期,看到底是什么样子,下同。 alert(date1); var date2 = Y.DataType.Date.parse(1995,11,17); var date3 = Y.DataType.Date.parse(1995,11,17,3,24,0); var date4 = Y.DataType.Date.parse(948548583);
alert(Y.DataType.Number.format(123123123.176,{ prefix: "€",//前缀 thousandsSeparator: ".",//千位分隔符 decimalSeparator: ",",//小数点分隔符 decimalPlaces: 2,//小数位数 suffix: " (EUR)"//后缀 }));
字符串值可以被转换成数字对象,用DataType.Number.parse().
var number = Y.DataType.Number.parse("123123");
DataType.XML.format()能够借搜一个XML文档并返回字符串,不同浏览器返回值可能有轻微差别。
var myString = Y.DataType.XML.format(myXMLDocument);
DataType.XML.parse接受一个字符串形式的XML,返回一个XML文档对象。
var myXMLDocument = Y.DataType.XML.parse("<myroot><item type='foo'><name>Abc</name><rank>1</rank></item><item type='bar'><name>Def</name><rank>2</rank></item><item type='bat'><name>Ghhi</name><rank>3</rank></item></myroot>");
待补充。。。。