gpt4 book ai didi

JavaScript 如果变量具有数组中某个项目的indexOf

转载 作者:行者123 更新时间:2023-11-28 20:28:50 26 4
gpt4 key购买 nike

我有一个在页面上动态设置的变量。然后我有一个数组中的颜色列表。我需要查看颜色变量是否包含数组中的一项。

代码如下:

var colorlist = ['Silver', 'Gray', 'Black', 'Red', 'Purple', 'White'];
var col1 = "";
var color1 = 'Titanium Silver';
for (var c = 0; c < colorlist.length; c++)
{
if(color1.indexOf(colorlist[c]))
{
col1 = colorlist[c];
}
else
{

}
}

我期望返回的是“Silver”,但它始终返回数组中的最后一项。我做错了什么?

最佳答案

将比较更改为:

if(color1.indexOf(colorlist[c]) > -1)
当未找到项目时,将返回

-1,但 -1 为 true。唯一的错误数字是0。所以你的比较不会像你预期的那样进行。

看看这个 fiddle ,它打印了 indexOf 的结果以及值的真实性:http://jsfiddle.net/R3Xb3/

请注意第一个如何返回 true,因为在字符串中(在有效索引处)找到了“Silver”。但其余的都没有找到,返回的索引是-1,结果是true

关于JavaScript 如果变量具有数组中某个项目的indexOf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16817991/

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