【发布时间】:2015-11-08 09:32:55
【问题描述】:
我正在寻找循环通过一个布尔值数组,这些布尔值将根据用户点击的链接而改变。首先,我初始化它们...
var boolean1 = false;
var boolean2 = false;
var boolean3 = false;
接下来,我有包含指向新页面的链接的字符串...
var link1 = "index.html";
var link2 = "someotherpage.html";
var link3 = "somepage.html";
然后,我将值放入相应的数组中
var booleanArray = new Array(3);
booleanArray[0] = boolean1;
booleanArray[1] = boolean1;
booleanArray[2] = boolean1;
var linkArray = new Array(3);
linkArray[0] = link1;
linkArray[1] = link2;
linkArray[2] = link3;
然后,我有更改值的函数(将根据用户单击的链接调用值)...
//onlick...
function changeBoolean1()
{
boolean1 = true;
}
function changeBoolean2()
{
boolean2 = true
}
function changeBoolean3()
{
boolean3 = true;
}
最后,根据调用onlick 的方法,其中一个布尔值将设置为false。那时,我想遍历布尔数组,并获取将哪一个设置为false。根据哪个是false,将打开相应的链接。
function getChoice()
{
for(var i = 0; i < booleanArray.length; i++)
{
if(booleanArray[i] == true)
{
window.location.href = linkArray[i];
break;
}
}
}
然而,该方法并没有得到基于
【问题讨论】:
-
为什么不直接使用数组字面量?
var booleanArray=[false,false,false], linkArray=["index.html", "someotherpage.html", "somepage.html"];而不是函数之前的 everything。这不是更好阅读和更容易使用吗? -
为什么不使用像 {"link":'index.html',"status":true} 这样的对象属性?它将帮助您轻松管理您的代码,并且您不会面临当前与参考相关的问题
-
当答案很可能是 OP 在本教程中没有走那么远时,为什么要问“为什么不”?
标签: javascript arrays loops if-statement boolean