Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/446.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javascript中的Unix时间戳到秒_Javascript - Fatal编程技术网

javascript中的Unix时间戳到秒

javascript中的Unix时间戳到秒,javascript,Javascript,我正在尝试做一个程序,在页面中15分钟后执行。我的问题是如何获得要添加到存储在cookie中的时间戳上的确切数字。 我需要一个函数将秒转换为时间戳或任何可以使操作在15分钟后执行的内容。我真的不知道1792939是多少时间,我把它放在下面的代码中 setInterval("timer()",1000); $.cookie("tymz", time); function timer(){ var d = new Date(); var tim

我正在尝试做一个程序,在页面中15分钟后执行。我的问题是如何获得要添加到存储在cookie中的时间戳上的确切数字。
我需要一个函数将秒转换为时间戳或任何可以使操作在15分钟后执行的内容。我真的不知道1792939是多少时间,我把它放在下面的代码中

setInterval("timer()",1000);



    $.cookie("tymz", time);

    function timer(){
        var d = new Date();
        var time = d.getTime();

        var x = Number($.cookie("tymz")) + 1792939;

        //alert('Cookie time: ' + x + '\nTime: ' + time);


        if(time > x){
            alert('times up');
        }else{
            //alert('not yet\n' + 'times up: ' + x + '\ntime: ' + time);
        }

    }

unix时间戳是从epoch(1/1/1970)算起的第二个时间戳,因此如果您想在15分钟后执行一些代码,只需记录页面加载的时间,然后每秒计算页面加载所经过的秒数。当当前时间与页面加载时间之差大于15*60*1000时,可以执行代码

var pageLoad = new Date().getTime();
function tick(){
    var now = new Date().getTime();
    if((now - pageLoad) > 15*60*1000) executeYourCode();
}
setInterval("tick()",1000);
请记住,javascript返回时间以毫秒为单位


希望这对您有所帮助

unix时间戳是从epoch(1/1/1970)算起的第二个时间戳,因此如果您想在15分钟后执行一些代码,只需记录页面加载的时间,然后每秒计算页面加载所经过的秒数。当当前时间与页面加载时间之差大于15*60*1000时,可以执行代码

var pageLoad = new Date().getTime();
function tick(){
    var now = new Date().getTime();
    if((now - pageLoad) > 15*60*1000) executeYourCode();
}
setInterval("tick()",1000);
请记住,javascript返回时间以毫秒为单位

希望这有帮助

使用setTimeout(..)怎么样


函数myFunc()
{
警报(“我将在加载此页面15分钟后出现!”);
}
setTimeout(“myFunc()”,60*15*1000);
检查此项:

使用setTimeout(..)如何


函数myFunc()
{
警报(“我将在加载此页面15分钟后出现!”);
}
setTimeout(“myFunc()”,60*15*1000);

选中此项:

如果数字是从1970年1月1日00:00:00起的秒数,则可以通过乘以1000并传递到日期,将“1792939”转换为javascript日期:

var d = new Date(1792939 * 1000) // Thu Jan 22 1970 04:02:19
目前距离1970年1月1日大约1311428869秒。因此,如果您有秒的值,那么您可以使用setInterval在15分钟后运行函数:

var seconds = ?? // set somehow
var start = new Date(seconds * 1000);
var now = new Date();
var limit = 15 * 60 * 1000;
var lag = now - start + limit;

// Only set timeout if start was less than 15 minutes ago
if ( lag > 0 ) {
  setTimeout( someFn, lag);
}

如果当前时间距离启动时间少于15分钟,则功能将在启动时间后大约15分钟运行。如果时间到期时系统正忙,则该函数应在之后尽快运行(通常在几毫秒内,但可能更久)。

如果数字是从1970年1月1日00:00:00起的秒数,则可以将“1792939”乘以1000并传递到日期,将其转换为javascript日期:

var d = new Date(1792939 * 1000) // Thu Jan 22 1970 04:02:19
目前距离1970年1月1日大约1311428869秒。因此,如果您有秒的值,那么您可以使用setInterval在15分钟后运行函数:

var seconds = ?? // set somehow
var start = new Date(seconds * 1000);
var now = new Date();
var limit = 15 * 60 * 1000;
var lag = now - start + limit;

// Only set timeout if start was less than 15 minutes ago
if ( lag > 0 ) {
  setTimeout( someFn, lag);
}

如果当前时间距离启动时间少于15分钟,则功能将在启动时间后大约15分钟运行。如果在时间到期时系统正忙,则该功能应在之后尽快运行(通常在几毫秒内,但可能更长)。

在没有服务器或cookie的情况下工作(以及IE7之后的所有浏览器)

看起来您使用的是jQuery,所以您最好使用jQuery.now()代替


在没有服务器或cookie的情况下工作(以及IE7之后的所有浏览器)

看起来您使用的是jQuery,所以您最好使用jQuery.now()代替


饼干里有什么?可解析的日期字符串或unix TS?另外,如果用户将页面保持打开15分钟,您想调用该函数吗?还是必须保持打开15分钟(即第1页5分钟,第2页10分钟)?cookie中有什么?可解析的日期字符串或unix TS?另外,如果用户将页面保持打开15分钟,您想调用该函数吗?还是必须是持久的(即第1页上5分钟,第2页上10分钟)?每秒检查15分钟是否已过去是非常低效的。每秒检查15分钟是否已过去是非常低效的。