gpt4 book ai didi

javascript - 在 for 循环中不断丢失增量变量

转载 作者:行者123 更新时间:2023-11-30 08:42:44 24 4
gpt4 key购买 nike

我已经摆弄这个太久了,似乎无法让它正常工作。我遇到的问题是我在 for 循环中丢失了增量变量的值,特别是当它进入我在其中的 if 语句时。理想情况下,我想遍历数组直到找到正确的值,将变量附加到该值并在 for 循环之外使用它。这是我正在使用的数组的结构。

var dXId = [
{url:"url1", dId:"id1"},
{url:"url2", dId:"id2"},
{url:"url3", dId:"id3"}
];

这是我正在运行所有内容的循环:

for(i=0; i < dXId.length; i++) {
if (dXId[i].url == currentUrl){
var dataXuId = dXId[i].dId;
break;
}

}

增量“i”变量在 if 语句中总是恢复为 0。奇怪的是,dXId[i].url 正确显示,但 dXId[i].dId 拉出第一个条目,然后“i”似乎丢失了。我确信有一个非常简单的解决方案,但我似乎总是遇到 javascript 问题。

最佳答案

您在 for 循环内设置 dXId[i].url = currentUrl 而不是与“==”进行比较。这可能是问题的一部分。

编辑

根据 Eric 的建议...

==运算符是松散地比较事物的值,===是严格地比较事物的值和类型。

例子:给定 x=10;

x == '10'  // true
x == 10 // true
x === '10' // false
x === 10 // true

关于javascript - 在 for 循环中不断丢失增量变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24685521/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com