好吧,这周完全是个业务型的程序猿了,明显地能感觉到洗头发时头皮都会有点疼,是秃顶的前兆。

算得上收获的就是有较多的接触到计算时间方面的事件...嗯,几个笔记分享一下

// 处理 /Date("xxxxxxxxx")/ 形态的时间戳
function changeDate(datetime) {return new Date(parseInt(datetime.replace("/Date(", "").replace(")/", ""), 10));
}

// 将时间字符串转换成 Date 形式
// 这里插播一个 bug,苹果机不能玩 new Date("xxxx-xx") 这样的字符串形式,所以得改成 new Date("xxxx","xx")
// 只能固定为年月日时分秒这样的格式,智能不了呀
function initDate(date) {if (arguments.length > 1) var D = arguments;else if (typeof date == "string") var D = date.split(/[- \.:\/]/);else return new Date(date);switch (D.length) {case 1: return new Date(D); break;case 2: return new Date(D[0], --D[1]); break;case 3: return new Date(D[0], --D[1], D[2]); break;case 4: return new Date(D[0], --D[1], D[2], D[3]); break;case 5: return new Date(D[0], --D[1], D[2], D[3], D[4]); break;case 6: return new Date(D[0], --D[1], D[2], D[3], D[4], D[5]); break;}
}

  

// 计算变化多少天后的日期
function DateAddDay(date, days) {var d = new Date(date);return new Date(d.setDate(d.getDate() + days));
}

// 该月第一天的日期
function FirstDay(date) {var d = new Date(date);return new Date(d.setDate(1));
}

// 计算该年该月有几天
function HowMuchDay(month, year) {if (!year) year = new Date().getFullYear();var y = [31, (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];for (var i in y) {if (i == (month - 1)) return y[i];}
}

 

// 倒计时,需要秒数则可以给返回值加上 .getTime()
// 时间是可以做减法的哟,我才知道
function TimeCountDown(endTime) {var now = new Date();var target = initDate(endTime);  // initDate 前面有提return new Date(target - now);
}

// 获得本周周一的日期,其他都可以根据 DateAddDay 来算咯
function FirstDayInThisWeek(date) {var date = initDate(date);return DateAddDay(date, 1 - date.getDay());
}

// 转换这天星期几
function ConvertDay(date) {var arr = ["一","二","三","四","五","六","日"]return arr[initDate(date).getDay()-1];
}

// 将 Date 转换成字符串格式
// pattern 的格式嘛,只要有着几个字母就行了
// yyyy = 年  mm = 月 dd = 日 hh = 小时 nn = 分 ss = 秒 w = 星期几
function ConvertDateToString(date, pattern) {var str = pattern;str = str.replace(/y{4}/i, date.getFullYear());str = str.replace(/m{2}/i, (date.getMonth()+1));str = str.replace(/d{2}/i, date.getDate());str = str.replace(/h{2}/i, date.getHours());str = str.replace(/n{2}/i, date.getMinutes());str = str.replace(/s{2}/i, date.getSeconds());str = str.replace(/w/i, "星期"+ConvertDay(date));return str;
}

  

// 自动补零
function addZero(num, n) {var len = num.toString().length || 2;while(len < n) {num = "0" + num;len++;}return num;
}

转载于:https://www.cnblogs.com/foreverZ/p/js-time-count-function.html

JS 中 Date() 的其他操作集锦相关推荐

  1. js实现小时钟,js中Date对象的使用?

    介绍一下js中Date对象的使用 dateObj = new Date() dateObj = new Date(dateValue) dateObj = new Date(year,month,da ...

  2. JS中常用的事件操作

    JS中常用的事件操作 前言 一.点击事件(导航栏内容切换功能) 二.移入移出事件(导航栏菜单下拉功能) 三.失去焦点事件(表单检验功能) 四.鼠标事件(鼠标跟随功能) 五.键盘事件(打飞机案例) 总结 ...

  3. Js中Date的应用

    近来在项目中做一个显示倒计时的功能时用到了Js的Date这个对象,在用Date进行时间转换的时候Chrome下能过正常转换,但是在IE下总是显示出NaN,google一下才知道,原来在用New Dat ...

  4. js数组获取index_通过事例重温一下常见的 JS 中 15 种数组操作(备忘清单)

    作者:Dmitri Pavlutin 译者:前端小智 来源:dmitripavlutin.com 最近几天,公众号无套路抽奖现金 200,参与方式如下: 存而不论是一种对舆论场合的改善?(每月一次抽大 ...

  5. 通过事例重温一下常见的 JS 中 15 种数组操作(备忘清单)

    作者:Dmitri Pavlutin 译者:前端小智 来源:dmitripavlutin.com 阿里云双12已开启,新老用户均可参与,2核1G云服务器仅需79元,,更多服务器配置及价格请关注:Hi拼 ...

  6. Node.js中multer的相关操作

    文章目录 一.练习看结构 (1)index.html文件 (2)server.js文件 示例一 示例二 (3)常用 二.multer的用法示意图 三.表单转Ajax上传文件 一.练习看结构 (1)in ...

  7. JS中DOM元素的操作

    一.DOM元素的获取 1)document.getElementsByClassName ( "class") 返回集 htmlcollection ,用法和数组一致 说明: cl ...

  8. JS中字符串的相关操作

    2019独角兽企业重金招聘Python工程师标准>>> 一.字符串的创建 创建一个字符串有几种方法.最简单的是用引号将一组字符包含起来,可以将其赋值给一个字符串变量. var myS ...

  9. JS中Date.parse()和Date.UTC()返回值不一致

    Date.parse() 方法解析一个表示某个日期的字符串,并返回从1970-1-1 00:00:00 UTC 到该日期对象(该日期对象的UTC时间)的毫秒数,如果该字符串无法识别,或者一些情况下,包 ...

最新文章

  1. linux mysql 5.7.20_linux MySQL 5.7.20安装教程
  2. linux安装显卡驱动的run文件,Linux系统下安装NVIDIA显卡驱动(run格式文件)
  3. Maven,Eclipse和Java 9
  4. 前端学习(2458):素材管理
  5. 单调栈 、 队列学习
  6. 移除inline-block间隙
  7. CStatic类简介
  8. kubernetes kubeadm init kube-apiserver.yaml already exists
  9. QT设置选中的文字加下划线
  10. 腾讯云“黑石”真相——“物理私服”
  11. javascript 获取邮箱的后缀
  12. android 获取设备的mac地址,Android编程获取设备MAC地址的实现方法
  13. 中国微单相机市场深度研究分析报告
  14. 任正非:华为没有 996,更没有 007!
  15. Dialog常用写法
  16. 友盟社会化分享+第三方登录 2022.03.28 最新版
  17. Windows 10即将“被订阅”:关于订阅制的痛并快乐
  18. python 生意参谋_如何爬取生意参谋数据?是不是违规操作?
  19. 平面设计中有哪些视觉引导的方法
  20. 蓝桥杯单片机——Ds1302时间开始与暂停

热门文章

  1. Asp.net Web Api 路由 和 异常处理
  2. linux启动找不到,pxe启动的时候找不到pxelinux.0的原因
  3. 【我的相册】一瓶解千愁
  4. 讨论简书留言界面的设计
  5. GDAL工具使用示例(一)
  6. 2018计算机二级c知识,2018全国计算机二级考试C语言常考知识点归纳
  7. Java多线程(七)——线程中断
  8. Arcgis javascript那些事儿(二十)——dojo中djconfig配置、dojo与requirejs项目冲突
  9. 页游中的十大经典游戏题材
  10. mac mysql语句_Mac 下MySQL使用group by 语句报错解决方法