4,5,6,7];
销= 3;
我们必须搜索干草。
按照惯例,我们遍历hay并检查pin(假定没有称为array.indexOf的本机函数)。
怎么样,
hay=hay.join(",");
pin=","+pin+",";
index=hay.indexOf(pin);
有什么建议吗?
最佳答案
考虑[2,3,4]的hay和2的大头针...您将在字符串“ 2,3,4”中寻找“,2”。现在您也可以在hay
的开头和结尾添加逗号,但这有点难看,不是吗?
然后是字符串长度可变的问题:考虑[1,222222,3,4]的数组。当您查找3时,由于长度为“ 222222”,您将得到不适当的索引。 (即使只有一位数值,也需要除以3。)
当您开始从整数移动到十进制值时,可能会遇到问题,在不同区域性中它们的格式可能有所不同-可能使用逗号作为十进制分隔符。我不知道JavaScript是否默认使用特定于文化的分隔符,但这是问题的一部分-您突然不得不考虑与手头任务无关的语言/平台方面。
一般来说,将数据转换为字符串格式以执行实际上不依赖于字符串格式的操作是一个坏主意。最好编写一个通用的indexOf
方法来为您执行循环。 (老实说,如果不存在这样的方法,我会感到惊讶,但是编写一次然后重复使用就足够了,如果需要的话。)