文档章节

关于时间的处理

小星星_cjx
 小星星_cjx
发布于 2017/09/11 13:47
字数 782
阅读 10
收藏 0

 js获取当前时间

var myDate = new Date();  //获取系统当前时间:Tue Aug 14 2018 15:10:17 GMT+0800 (中国标准时间)

  • myDate.getYear();  //获取当前年份(2位),现在貌似没有这个方法了
  • myDate.geyFullYear();  //获取当前年份(4位):18
  • myDate.getMonth();  //获取当前月份(0-11,0代表1月):7
  • myDate.getDate();  //获取当前日(1-31):14
  • myDate.getDay();  //获取当前星期X(0-6,0代表星期天):2
  • myDate.getTime();  //获取当前时间(从1970.1.1开始的毫秒数):1534230986220
  • myDate.getHours();  //获取当前小时数(0-23):15
  • myDate.getMinutes();  //获取当前分钟数(0-59):16
  • myDate.getSeconds();  //获取当前秒数(0-59):36
  • myDate.getMilliseconds();  //获取当前毫秒数(0-999):220
  • myDate.toLocaleDateString();  //获取当前日期:2018/8/14
  • myDate.toLocaleTimeString();  //获取当前时间:下午2:51:21
  • myDate.toLocaleString();  //获取日期与时间:2018/8/14 下午2:51:21

在调用上述方法时还发现了一系列getUTCHours()的方法,好奇的小手点了百度查了一下UTC:

不属于任意时区。协调世界时,又称世界统一时间,世界标准时间,国际协调时间,简称UTC。

例如:

getHours()是获取本时区的时间,getUTCHours()是获取UTC时间,我们是位于东八区,UTC时间是我们的时区时间减8小时,如果我们现在是上午11点,UTC时间就是上午3点。

 js获取当前时间戳

时间戳(timestamp),一个能表示一份数据在某个特定时间之前已经存在的、 完整的、 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间。

!可以直接比较时间戳的大小来判断时间的先后

获取方法

  • var timestamp = Date.parse(new Date())

这里得到的结果将后三位(毫秒)转换成了000显示,使用时可能会出现问题。例如动态添加页面元素id的时候,不建议使用。

  • var timestamp = (new Date()).valueOf()
  • var timestamp = new Date().getTime()

时间戳转换为日期格式

function timestampToDate(timestamp, format){
    var time
    //时间戳为10位需*1000,时间戳为13位的话不需乘1000
    if((timestamp+"").length == 10){
        time = timestamp * 1000
    }else{
        time = timestamp
    }
    var date = new Date(time);    
    var map = {
        "M": date.getMonth() + 1, //月份
        "d": date.getDate(), //日
        "h": date.getHours(), //小时
        "m": date.getMinutes(), //分
        "s": date.getSeconds(), //秒
        "q": Math.floor((date.getMonth() + 3) / 3), //季度
        "S": date.getMilliseconds() //毫秒
    };
    format = format.replace(/(y+|M+|d+|h+|m+|s+|q+|S+)/g, function (all, t) {
        t = t.charAt(0);
        var v = map[t];
        if (v !== undefined) {
            if (all.length > 1) {
                v = '0' + v;
                v = v.substr(v.length - 2);
            }
            return v;
        }else if (t === 'y') {
            return (date.getFullYear() + '').substr(4 - all.length);
        }
        return all;
    });
    return format;
}
//console.log(formatDate('1403058804342', 'yyyy-MM-dd hh:mm:ss')),得到:2014-06-18 10:33:24

 * js获取number的length?

1、调用toString方法转为字符串后取长度

var num = 123456;

alert(num.toString().length);

2、隐式转字符串后取长度

var num = 123;
alert((num + '').length)

日期格式转换为时间戳

var date = new Date('2014-04-23 18:55:49:123');
// 有三种方式获取
var time1 = date.getTime();
var time2 = date.valueOf();
var time3 = Date.parse(date);
console.log(time1);//1398250549123
console.log(time2);//1398250549123
console.log(time3);//1398250549000

 

© 著作权归作者所有

共有 人打赏支持
小星星_cjx
粉丝 1
博文 27
码字总数 24917
作品 0
深圳
前端工程师
Adobe ActionScript 例子汉化

对AdobeActionScript3samples进行汉化并进行适应 FlashDevelop 的改写与改造(以纯As3实现或者以Flex实现),是一个非常好的学习 ActionScript 编程的东东。 每个子项目中的.fla文件需要Fla...

匿名
2010/03/21
2.2K
0
Python之time模块的时间戳、时间字符串格式化与转换

Python处理时间和时间戳的内置模块就有,和两个,本文先说模块。 关于时间戳的几个概念 时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。 时间元组(),包含9个元素。 时间格式字符...

楠木楠
04/04
0
0
史上最详解Python日期和时间处理(上)

好吧,我承认这有标题党的嫌疑,不过看了那么多文章,的确没有找到一篇让我满意的关于日期和时间处理的详解文章,于是决心自己动手亲写一篇,希望能对得起这个霸气的标题。言归正传,在Pytho...

geekpy
08/12
0
0
关于Netty对于Channel超时机制缺陷的一点想法

我们看看ReadTimeoutHandler下面这个初始化方法,在初始化的时候做的一些事情,Netty的2个改进点我认为都在这里可以体现出来(下面红体): private void initialize(ChannelHandlerContext ...

袁璞
2015/08/12
0
0
iOS时间格式化输出技巧

时间格式化输出 一.前言 最近项目开发过程中用到了大量的关于时间的处理,将后台返回的时间字符串转换为指定的格式时间再显示在UI上. 例如: 将后台返回的时间字符串转换为:、、、、、、、等等...

朱晓辉
2017/04/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

此生1.3

颜值是开胃菜,不要太在意,正餐才是重点。

colinux
今天
1
0
[雪峰磁针石博客]软件测试专家工具包1web测试

web测试 本章主要涉及功能测试、自动化测试(参考: 软件自动化测试初学者忠告) 、接口测试(参考:10分钟学会API测试)、跨浏览器测试、可访问性测试和可用性测试的测试工具列表。 安全测试工具...

python测试开发人工智能安全
今天
3
0
JS:异步 - 面试惨案

为什么会写这篇文章,很明显不符合我的性格的东西,原因是前段时间参与了一个面试,对于很多程序员来说,面试时候多么的鸦雀无声,事后心里就有多么的千军万马。去掉最开始毕业干了一年的Jav...

xmqywx
今天
3
0
Win10 64位系统,PHP 扩展 curl插件

执行:1. 拷贝php安装目录下,libeay32.dll、ssleay32.dll 、 libssh2.dll 到 C:\windows\system32 目录。2. 拷贝php/ext目录下, php_curl.dll 到 C:\windows\system32 目录; 3. p...

放飞E梦想O
今天
1
0
谈谈神秘的ES6——(五)解构赋值【对象篇】

上一节课我们了解了有关数组的解构赋值相关内容,这节课,我们接着,来讲讲对象的解构赋值。 解构不仅可以用于数组,还可以用于对象。 let { foo, bar } = { foo: "aaa", bar: "bbb" };fo...

JandenMa
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部