js 如何让某段代码只执行一次

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 如何让某段代码只执行一次相关的知识,希望对你有一定的参考价值。

var firstdate = new Date();
var lastdate = new Date();
var yy=firstdate .getFullYear();
var MM=firstdate .getMonth()+1;
var dd=firstdate .getDate();
var hh=firstdate .getHours();
var mm=firstdate .getMinutes();
var ss=firstdate .getSeconds();
firstdate=yy+'-'+MM+'-'+dd+' '+hh+':'+mm+':'+ss;
这是服务器上获取时间的一段代码。firstdate获取后就不会再有变动 我想让他只执行一次
而lastdate要不断更新。
这要怎么实现 求指点!

参考技术A

有两种方法:

    将第一次获取的时间存储到数据库中,之后如果数据库中有值的话,说明已经存储,则后来获取的firstdate不再进行存储。

    将第一次获取的时间存储到cookie中,之后如果cookie中有值的话,说明已经存储,则后来获取的firstdate不再进行存储。


好吧,这两个方法很相似,只不过是存储的介质不同而已

本回答被提问者和网友采纳
参考技术B 不停更新,每次执行都重新给i赋值为0了;
相当就重新执行那个i++就在本次的if循环才起作用;
参考代码如下:
<script type="text/javascript">
var i=0;
if (i==0)
document.getElementById("form1").submit();
i++;

</script>
参考技术C js本身就只执行一次啊?除非你用setInterval函数来循环调用 如果你是说刷新页面也不变的话 那要把数据存到数据库里 如果没有数据库只能用cookie 但是cookie不能一直保存 参考技术D // ......第一次获取
// 然后
setInterval(function()
// 每秒改变值.....
, 1000);追问

能再具体点吗

追答

// js换算时间 function run_time() var ary_week = []; ary_week[0] = "日"; ary_week[1] = "一"; ary_week[2] = "二"; ary_week[3] = "三"; ary_week[4] = "四"; ary_week[5] = "五"; ary_week[6] = "六"; var str_date = ""; var obj_date = new Date(); str_date += obj_date.getFullYear() + "年"; str_date += (obj_date.getMonth() + 1) + "月"; str_date += obj_date.getDate() + "日 "; str_date += ((obj_date.getHours() < 10) ? ('0' + obj_date.getHours()) : obj_date.getHours()) + ":"; str_date += ((obj_date.getMinutes() < 10) ? ('0' + obj_date.getMinutes()) : obj_date.getMinutes()) + ":"; str_date += ((obj_date.getSeconds() < 10) ? ('0' + obj_date.getSeconds()) : obj_date.getSeconds()) + " 星期"; str_date += ary_week[obj_date.getDay()]; $("#sp_date").html(str_date); setInterval(run_time, 1000);

以上是关于js 如何让某段代码只执行一次的主要内容,如果未能解决你的问题,请参考以下文章

保证某段代码在程序的生命周期内只执行一次

这段JS代码如何让它只执行一次就停止

怎么用cookie控制一个IP只执行一次JS代码

如何让网页代码只执行一次,刷新后又会重新执行一次,或者关闭浏览器以后再进去也会重新执行一次。

RXJS combineLatest running pipe 7 次一次发射

cookie控制一个IP 24小时只执行一次JS退出弹窗代码