JavaScript中的Date类型是在早期Java中的java.util.Date类基础上构建的。为此,Date类型使用自UTC 1970年1月1日零时开始经过的毫秒数来保存日期。在使用这种数据存储格式的条件下,Date类型保存的日期能够精确到1970年1月1日之前或之后的285 616年。
创建日期对象
在javascript中,可以使用Date()构造函数来创建日期对象,如:
复制代码 代码如下:
var date=new Date();
当没有向构造函数传递日期参数时,将创建一个拥有当前日期和时间的对象。
当然,如果想根据特定的日期和时间创建日期对象,也是可以的,只需要将能表示日期的参数传入构造函数即可。
Date()构造函数能够接受的常用的日期格式有:
”月/日/年“,如2/27/2014;
”英文月名 日,年“,如February 27,2014;
”年,月,日,时,分,秒,毫秒“,如2014,1,27,11,22,22
下面分别以上面的格式来创建一个日期对象:
var date1=new Date("2/27/2014"); alert(date1); //Thu Feb 27 2014 00:00:00 GMT+0800 var date2=new Date("February 27,2014"); alert(date2); //Thu Feb 27 2014 00:00:00 GMT+0800 var date3=new Date(2014,1,27,11,24,0); alert(date3); //Thu Feb 27 2014 11:24:00 GMT+0800 var date4=new Date(2014,1,27); alert(date4); //Thu Feb 27 2014 00:00:00 GMT+0800 var date5=new Date("2014,1,27,11,24,0"); alert(date5); //Invalid Date
通过上面的例子,大家可能会注意到它们之间的区别:
第一,用前面两种方式创建日期对象时,必须以字符串的形式作为参数传入;而使用第三种方式创建时不能以字符串的形式传入,每个值都得当做单独的值传入。
第二,有一点必须特别注意,用第三种方式创建日期时,它的月份是从0开始的,即一月份对应的是0,依次类推;而前面两种方法,是正常的月份表示,即二月对应的就是2。
第三,使用第三种方式表示时,年月是必须的,而其他参数省略时,将以0表示。
注:前面两种方式与显示的调用Date.parse()方法将得到一致的结果;第三种方式与显示的调用Date.UTC()方法得到的结果一致。
继承的方法
Date类型也继承有toString()、toLocaleString()和valueOf()方法。调用这些方法所得到的值的格式会因为浏览器的不同而不同。具体的,自己可以尝试调用下。
日期格式化方法
Date类型还有一些专门用于将日期格式化为字符串的方法,如下:
toDateString()——以特定与实现的格式显示星期几、月、日、年;
toTimeString()——以特定于实现的格式显示时、分、秒、时区;
toLocaleDateString()——以特定于地区的格式显示星期几、月、日、年;
toLocaleTimeString()——以特定于现实的格式显示时、分、秒;
toUTCString()——以特定于显示的格式显示完整的UTC日期
上述方法可能相对不经常使用,所以不深入介绍。
日期/时间组件方法
Javascript引用类型之数组Array
[数组的22种方法概述]
javaScript中的数组与其他多数语言中的数组有着相当大的区别。虽然JavaScript数组与其他语言中的数组都是数据的有序列表,但与其他语言不同的是,JavaScript数组的每一项可以保持任何类型的数据。也就是说,可以用数组的第一个位置来保存字符串,用第二个位置来保存数值,用第三个位置来保存对象。而且,JavaScript数组的大小是可以动态调整的,即可以随着数据的添加自动增长以容纳新增数据。
Array:数组中的每一项可以保存任何类型的数据,且数组的大小是动态调整的(最多可包含4294967295项,大约43亿项)
[1.1]数组创建:
[1.1.1]使用Array构造函数(在使用Array构造函数时,也可以省略New操作符)
e.g. var colors = new Array(); var colors = new Array(20); var colors = new Array('red','blue','green'); var colors = Array(3);
[注意]若传递的是数值,则会按照该数值创建包含给定项数的数组;
如果传递的是其他类型的参数,则会创建包含那个值的只有一项的数组
e.g. var colors = new Array(3);//包含三项的数组 var colors = new Array('Greg');//包含一项,且该项为"Greg"的数组
[1.1.2]使用数组字面量表示法(用该方法不会调用Array构造函数)
e.g. var colors = ['red','blue','green']; var colors = []; [不可用] var colors = [1,2,];
//在IE8及以前中会包含一个三个项目,且每个项目为1、2和undefined的数组。在其他浏览器中为只包含1和2的数组
[不可用] var colors = [,,,];
//在IE8及以前会创建4项的数组,而在其他浏览器中会创建3项的数组
[1.2]数组读写