Javascript 为什么有人告诉我我的数组没有被识别?
我正在编写一个函数,在这里我输入一个字符串,函数检查它在数组中的位置。我已经编写了代码,但是我一直收到一个错误,控制台说“contents[I]not identified”,但我已经定义了数组Javascript 为什么有人告诉我我的数组没有被识别?,javascript,arrays,loops,for-loop,Javascript,Arrays,Loops,For Loop,我正在编写一个函数,在这里我输入一个字符串,函数检查它在数组中的位置。我已经编写了代码,但是我一直收到一个错误,控制台说“contents[I]not identified”,但我已经定义了数组 function idxP1(contents,pattern) { var contents = [ "Loughborough University offers degree programmes and world class research.", "An alternative Univ
function idxP1(contents,pattern) {
var contents = [ "Loughborough University offers degree programmes and
world class research.", "An alternative University", "Yet another
University"];
return contents.findIndex(word => word.toLowerCase().includes(pattern));
}
alert(idxP1(null, 'Uni'))
根据您的评论,您肯定应该使用
findIndex
:
函数idxP1(内容、模式){
var contents=[“拉夫伯勒大学提供学位课程和世界一流的研究。”,“一所另类大学”,“另一所大学”];
返回contents.findIndex(word=>word.toLowerCase().includes(pattern.toLowerCase());
}
log(idxP1(null,'Uni'))代码>Java!=Javascript循环总是在第一次迭代时结束,返回0
或-1
。第一个参数的名称与您在函数中声明的变量的名称相同。因此,我是否必须设置一个不同的变量,然后让它们彼此相等?问题是,在for行的末尾有一个分号,因此我始终等于3,并且未定义内容[3]。我收到错误“UncaughtTypeError:word.toLowerCase(…).contains不是函数“我添加了一个可运行的代码段,并将代码从contains
修改为includes
。(contains
自v48以来已从firefox中删除,并被includes
替换。我尝试了此操作,但得到的输出为-1,这是不正确的。我不明白,您是否尝试运行该代码段?输出为0
。是的,但当我尝试提醒输出时,由于某些原因,我收到了一个错误:/