• 前端(js/jquery) 日期和时间戳的转换


    一、JavaScript中获取当前时间的时间戳

      方法一:

    var timestamp=Date.parse(new Date());   ====》结果是:1451441086000

      :这种方式精确到秒,毫秒位置上的用0代替了。

      方法二:

    var timestamp=(new Date()).valueOf();  ====》结果是:1451441232779

     注:这两种方法获取从 1970年1月1日午夜开始的毫秒数

      方法三:

      javascript 中使用 new Date().getTime() 方法IE8 以上版本可以使用 直接使用Date.now()方法

    //IE8以上版本
      if (!Date.now) {
          Date.now = function() { return new Date().getTime(); };
      }  
    jQuery 获取时间戳 $.now() var timestamp = $.now();

    二、jquery中将具体时间转换成时间戳

      1、引入jquery.extend.date.js插件

    <script type="text/javascript" src="../js/jquery.extend.date.js"></script>
    

      2、代码原理

    (function($) {
        $.extend({
            myTime: {
                /**
                 * 当前时间戳
                 * @return <int>        unix时间戳(秒)  
                 */
                CurTime: function(){
                    return Date.parse(new Date())/1000;
                },
                /**              
                 * 日期 转换为 Unix时间戳
                 * @param <string> 2014-01-01 20:20:20  日期格式              
                 * @return <int>        unix时间戳(秒)              
                 */
                DateToUnix: function(string) {
                    var f = string.split(' ', 2);
                    var d = (f[0] ? f[0] : '').split('-', 3);
                    var t = (f[1] ? f[1] : '').split(':', 3);
                    return (new Date(
                            parseInt(d[0], 10) || null,
                            (parseInt(d[1], 10) || 1) - 1,
                            parseInt(d[2], 10) || null,
                            parseInt(t[0], 10) || null,
                            parseInt(t[1], 10) || null,
                            parseInt(t[2], 10) || null
                            )).getTime() / 1000;
                },
                /**              
                 * 时间戳转换日期              
                 * @param <int> unixTime    待时间戳(秒)              
                 * @param <bool> isFull    返回完整时间(Y-m-d 或者 Y-m-d H:i:s)              
                 * @param <int>  timeZone   时区              
                 */
                UnixToDate: function(unixTime, isFull, timeZone) {
                    if (typeof (timeZone) == 'number')
                    {
                        unixTime = parseInt(unixTime) + parseInt(timeZone) * 60 * 60;
                    }
                    var time = new Date(unixTime * 1000);
                    var ymdhis = "";
                    ymdhis += time.getUTCFullYear() + "-";
                    ymdhis += (time.getUTCMonth()+1) + "-";
                    ymdhis += time.getUTCDate();
                    if (isFull === true)
                    {
                        ymdhis += " " + time.getUTCHours() + ":";
                        ymdhis += time.getUTCMinutes() + ":";
                        ymdhis += time.getUTCSeconds();
                    }
                    return ymdhis;
                }
            }
        });
    })(jQuery);
    

      3、应用

    $.mytime.DateToUnix('2015-12-30 12:30:15'); //日期转换为时间戳
    
    $.mytime.UnixToDate(1451442143254);  //时间戳转换为日期
  • 相关阅读:

    梯度下降法
    维特比算法
    分治法
    动态规划
    hadoop学习视频
    Java深拷贝浅拷贝
    Android NDK r8 Cygwin CDT 在window下开发环境搭建 安装配置与使用 具体图文解说
    Linux高性能server编程——定时器
    OpenGL进阶演示样例1——动态画线(虚线、实线、颜色、速度等)
  • 原文地址:https://www.cnblogs.com/renxiaoren/p/5087972.html
Copyright © 2020-2023  润新知