Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么有人告诉我我的数组没有被识别?_Javascript_Arrays_Loops_For Loop - Fatal编程技术网

Javascript 为什么有人告诉我我的数组没有被识别?

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

我正在编写一个函数,在这里我输入一个字符串,函数检查它在数组中的位置。我已经编写了代码,但是我一直收到一个错误,控制台说“contents[I]not identified”,但我已经定义了数组

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
。是的,但当我尝试提醒输出时,由于某些原因,我收到了一个错误:/