重新加载javascript函数

时间:2017-05-03 19:35:15

标签: javascript

我有一个webapp,onload它运行我的javascript变量,其中一个变量是一个javascript weeknumber函数,在其中它正确读取和显示。但问题是webapp不会刷新变量,除非我重新加载应用程序(我不想这样做)所以我希望有一种方法可以创建将周数编写脚本创建到我调用的函数中(类似)到getdate()而不是在webapp加载时运行。这是我一直在使用的脚本

<script>
Date.prototype.getWeek = function() {
var onejan = new Date(this.getFullYear(), 0, 1);
return Math.ceil((((this - onejan) / 86400000) + onejan.getDay() - 1) / 7);
}
var week = "Week "
var weekNumber = week+(new Date()).getWeek();

</script>

1 个答案:

答案 0 :(得分:0)

根据您的webapp框架,可能会有一个事件可用于触发更新。如果没有,您可以使用setInterval()

<script>
    Date.prototype.getWeek = function() {
        var onejan = new Date(this.getFullYear(), 0, 1);
        return Math.ceil((((this - onejan) / 86400000) + onejan.getDay() - 1) / 7);
    }
    var week = "Week "
    var date = new Date()
    var weekNumber = week + date.getWeek();

    function setWeek() {
        date = new Date()
        weekNumber = week + date.getWeek();
    }

    setInterval(setWeek, 500) // Sets the week variable every 500 milliseconds

</script>

此处week变量为全局变量,setInterval每500毫秒调用setWeek()函数来更新全局变量。