为了账号安全,请及时绑定邮箱和手机立即绑定

Javascript 循环:返回 1 到 10,然后再次返回(重新启动循环)

Javascript 循环:返回 1 到 10,然后再次返回(重新启动循环)

幕布斯7119047 2021-08-26 20:07:17
上下文:我正在根据w3schools.com 中的教程使用 cookie 。这个想法是设置由用户输入的搜索查询给出的最多 10 个 cookie(即,只应存储最后 10 个条目)。我有一个函数可以为 10 个 cookie(“Search_Entry”+i)中的每一个生成一个名称。一切正常,直到第 11 个条目,我希望函数再次返回第一个可能的名称,然后返回第二个,第三个等,这样已经存储在这些名称下的值将简单地替换为新的一。在某种程度上,我希望循环以某种方式重新启动,尽管这似乎不是一个简单的选择。var g_iMaxSearchQueries = 10;function dynamicCookieName() {    var l_aCurrentCookie;    for (var i = 0; i < g_iMaxSearchQueries; i++) {        l_aCurrentCookie = getCookie("Search_Entry"+i);        if(l_aCurrentCookie == "" && i < g_iMaxSearchQueries) {            return "Search_Entry"+i;        } else if (i == 9) { //this “else” needs to be an “else if” in order for the condition to work properly. Maybe is (i == 9) not the right one but the only one that worked for me from what I’ve tried.          //here would the loop start running again exactly like in the first part.        }    }}据我所知,我到处搜索,并尝试了几种不同的方法,还有更复杂的潜在解决方案,但基本问题仍然相同,这就是为什么我的问题和我发布的代码版本指的是我需要的核心. 也许有更多知识和经验的人可以对此有所了解。非常感谢!
查看完整描述

2 回答

?
红糖糍粑

TA贡献1815条经验 获得超6个赞

假设您希望循环连续执行,则i++可以将条件更改为


i = (i + 1)%g_iMaxSearchQueries

或者在 else if 部分,将 i 设置回 0。


else if(i==9) {

    i = 0

}


查看完整回答
反对 回复 2021-08-26
  • 2 回答
  • 0 关注
  • 408 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信