javascript的location.reload在函数内不会重复执行

setInterval结合location.reload做定时刷新,为什么放在函数里面,就只能刷新一次,而不是定时反复刷新呢?还请高手指点迷津……... setInterval 结合 location.reload 做 定时刷新,为什么 放在 函数里面, 就 只能刷新一次, 而不是 定时 反复刷新呢?还请高手指点迷津…… 展开
 我来答
ms27946
2018-05-26 · 超过20用户采纳过TA的回答
知道答主
回答量:32
采纳率:100%
帮助的人:21.2万
展开全部

我的大兄弟,你的reload会导致页面刷新,页面上所有的东西生命周期都会重来一次

你的shua函数自然也是

如果页面不刷新,调用某个函数的话,那么这个函数(也包括setInterval和settimeout)在它的生命周期当中都是存在的,所以会重复的调用,故改成下面这样 setInterval是有效果的:

function invoke(){
    alert("invoke");
}
function start(){
    setInterval(invoke,2000)
}

就像前面说的,当这个程序调用start正常运行的时候,你一刷新页面,那么这个循环调用的效果就没了,你必须调用一次start才可以正常循环触发,因为页面刷新,页面上所有的内容(DOM,JS,CSS)都会重新构造一遍

藤原子大雄
2018-05-26 · TA获得超过7195个赞
知道大有可为答主
回答量:6977
采纳率:82%
帮助的人:1727万
展开全部
如果前两个if满足相应的条件就不会执行第3个if,因为每个if语句里面都有返回语句(return),而与if语句的先后次序无关。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式