js 日期函数用法总结
1 创建Date对象,用于处理日期和时间
var date=new Date();
Date对象会把当前日期和时间保存为初始值。
还可以设置其它参数初始化 Date对象:
new Date("month dd,yyyy hh:mm:ss");
new Date("month dd,yyyy");
new Date(yyyy,mth,dd,hh,mm,ss);
new Date(yyyy,mth,dd);
new Date(ms);
new Date("yyyy/MM/dd");
参数说明:
month:用英文表示月份名称,从January到December
mth:用整数表示月份,从0-11(1月到12月)
dd:表示一个月中的第几天,从1到31
yyyy:四位数表示的年份
hh:小时数,从0(午夜)到23(晚11点)
mm:分钟数,从0到59的整数
ss:秒数,从0到59的整数
ms:毫秒数,为大于等于0的整数
如:
new Date("January 12,2006 22:19:35");
new Date("January 12,2006");
new Date(2006,0,12,22,19,35);
new Date(2006,0,12);
new Date(1137075575000);
new Date("2014/09/22");
2. Date 对象的方法
日期访问方法:
|
Method(方法) |
Description (描述) |
Value(数值) |
|
getYear() |
返回年份的最后两位数字 |
2001 |
|
getMonth() |
返回年份中的第几月(0到11) |
5 |
|
getDate() |
返回月份中的第几日(1到31) |
2 |
|
getDay() |
返回星期中的第几天 (0到6) |
6 |
|
getTimezoneOffset() |
返回当地时间与格林尼治天文台平均时间的差别 |
-480 (-8h) |
|
getHours() |
返回一天中的时针点数(0到23) |
16 |
|
getMinutes() |
返回分钟 (0..59) |
8 |
|
getSeconds() |
返回时间的秒 (0到59) |
24 |
|
getTime() |
返回自从公元1970年1月1日的毫秒数 |
991469304470 |
日期设置方法
|
setDate() |
设置每月中的第几天(从0到30) |
|
setHours() |
设置小时(从0到23) |
|
setMinutes() |
设置分钟(从0到59) |
|
setMonth() |
设置月份(从0到11) |
|
setSeconds() |
设置秒数(从0到59) |
|
setTime() |
设置时间(从公元以来的毫秒数) |
|
setYear() |
设置年份 |
其它的日期方法:
|
parse |
转化日期字符串为自从公元以来的毫秒数,比如Date.parse(“date string”) |
|
toString() |
Sat Jun 2 16:08:24 UTC+0800 2001 |
|
toGMTString() |
Sat, 2 Jun 2001 08:08:24 UTC |
|
toLocaleString() |
2001年6月2日 16:08:24 |
应用例子:使用getDay()方法获取星期数
var myDate=new Date();
var weekCn=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];
alert(weekCn[myDate.getDay()]);
3 通过扩展方法format格式化 Date
// 对Date的扩展,将 Date 转化为指定格式的String
// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符,
// 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
// 例子:
// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
// (new Date()).Format("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
Date.prototype.Format = function (fmt) { //author: meizz
var o = {
"M+": this.getMonth() + 1, //月份
"d+": this.getDate(), //日
"h+": this.getHours(), //小时
"m+": this.getMinutes(), //分
"s+": this.getSeconds(), //秒
"q+": Math.floor((this.getMonth() + 3) / 3), //季度
"S": this.getMilliseconds() //毫秒
};
if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o)
if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
return fmt;
} 调用:
new Date().format('yyyy-MM-dd');
其它实用方法:
//函数名:CheckDateTime
//功能介绍:检查是否为日期
function CheckDate(str){
var reg = /^(\d+)-(\d{1,2})-(\d{1,2})$/;
var r = str.match(reg);
if(r==null)return false;
r[2]=r[2]-1;
var d= new Date(r[1], r[2],r[3]);
if(d.getFullYear()!=r[1])return false;
if(d.getMonth()!=r[2])return false;
if(d.getDate()!=r[3])return false; return true;
} 调用:
alert(CheckDate("2014-9-23"))
js 日期函数用法总结的更多相关文章
- Js日期函数Date格式化扩展
prototype是向对象中添加属性和方法,返回对象类型原型的引用,例如对js中日期函数Date进行扩展: Date.prototype.Format = function (fmt) { var o ...
- JS日期函数
JS的日期函数有以下几个: getFullYear(); //获取当前年 getMonth(); //获取当前月,需要加1,而且只有一位数字,如果小于10需要前面加0 getDate(); //获取当 ...
- Sql server日期函数用法
SQL日期函数 SQL日期函数中的类型码可以为0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 ,20,21,22,23,24,25,100,101,102,103,104,105 ...
- PostgreSQL 的日期函数用法举例
最近偶有开发同事咨询 PostgreSQL 日期函数,对日期处理不太熟悉,今天详细看了下手册的日期函数,整理如下,供参考. 一 取当前日期的函数 --取当前时间skytf=> select no ...
- 项目中用到的js日期函数
<script type="text/javascript"> //替换字符串 function Replace(str, from, to) { ...
- SQLServer日期函数用法
--1.显示本月第一天 ,) ),)) --2.显示本月最后一天 ,),,))) ,,,)) --3.上个月的最后一天 ,,)) --4.本月的第一个星期一 , ) --5.本年的第一天 ,) --6 ...
- js 匿名函数 用法
JS执行顺序为从上到下 先声明存储匿名函数的变量放在JS文件中 <script src="/Scripts/niming.js" type="text/javasc ...
- js split函数用法总结
一.split定义:split() 方法用于把一个字符串分割成字符串数组, 返回值: 一个字符串数组. 二.基本用法:stringObject.split(separator,howmany) 1.参 ...
- js替换函数用法
定义和用法 replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串. 语法 stringObject.replace(regexp/substr,replac ...
随机推荐
- 使用visual studio 2013 快速搭建phonegap开发环境
前一段时间开发了一款简单的Phonegap应用,遇到了很多坑,其中有一个坑就是在搭建开发环境上.由于Phonegap 2.x 与3.x 区别比较大,导致了开发环境也有所不同.2.x 是这样的http: ...
- hdu 3339 In Action 背包+flyod
In Action Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=333 ...
- C++ Code_HotKey
Code::使用HotKeyCtrl定义一个系统热键 // 关联HotKeyCtrl控件变量 m_HotKey1 BEGIN_MESSAGE_MAP(CXyzDlg, CD ...
- 设计模式 ( 十八 ) 策略模式Strategy(对象行为型)
设计模式 ( 十八 ) 策略模式Strategy(对象行为型) 1.概述 在软件开发中也经常遇到类似的情况,实现某一个功能有多种算法或者策略,我们能够依据环境或者条件的不同选择不同的算法或者策略来完毕 ...
- 可以将一些配置信息已json格式存在数据库中读取的时候序列化。
public partial class json序列化 : System.Web.UI.Page { protected void Page_Load(object sender ...
- innodb 变量
http://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html
- hash_map map
什么时候需要用hash_map,什么时候需要用map? 总体来说,hash_map 查找速度会比map快,而且查找速度基本和数据数据量大小,属于常数级别;而map的查找速度是log(n)级别.并不一定 ...
- Ubuntu/Debian 安装lxml的正确方式
lxml是Python的一个库,主要用于处理XML和HTML. 最近需要用lxml,但是在Ubuntu上直接pip安装失败,研究了半天终于找到了正确安装方法,记录在此. 由于Ubuntu和Debian ...
- Communications link failure的解决办法
使用Connector/J连接MySQL数据库,程序运行较长时间后就会报以下错误: Communications link failure,The last packet successfully r ...
- Frameset使用教程 小结
frame,是网页开发必须掌握的知识.例如后台架构.局部刷新,页面分割,都是frame的用途表现,尤其是后台页面制作,使用frame会给用户带来非常舒适的使用感受. frame知识点包括(frames ...