Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.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_Ecmascript 6 - Fatal编程技术网

Javascript 预期未定义为等于';计算机';

Javascript 预期未定义为等于';计算机';,javascript,ecmascript-6,Javascript,Ecmascript 6,我正在在线学习ES 6,我有一个测试: 实现findLargestString函数,该函数只有一个参数 字符串(字符串数组),它将设置最大的字符串 在最长字符串顶部定义的变量 作为字符串参数传入的字符串数组的 开始时,我有一个方法: let largestString; function findLargestString(strings) { // set largestString to point to the // longest string found in th

我正在在线学习ES 6,我有一个测试:

实现findLargestString函数,该函数只有一个参数 字符串(字符串数组),它将设置最大的字符串 在最长字符串顶部定义的变量 作为字符串参数传入的字符串数组的

开始时,我有一个方法:

let largestString;

function findLargestString(strings) {
    // set largestString to point to the 
    // longest string found in the strings array passed in
}
所以我尝试:

let largestString;

function findLargestString(strings) {
    let largestString = '';
    strings.forEach((string) => {
        if (string.length > largestString.length) {
            largestString = string;
        }
    });

    return largestString;
}
但是这个返回错误:

largestString should be set to the largest string passed in

Expected undefined to equal 'computers'.

我该怎么做呢?

使用函数的返回值,看看“let”是如何工作的

let largestString = findLargestString(strings);

使用函数的返回值,看看“let”是如何工作的

let largestString = findLargestString(strings);

你的代码对我来说似乎很好

让最大的字符串;
函数findLargestString(字符串){
让最大字符串=“”;
strings.forEach((string)=>{
if(string.length>largestString.length){
最大字符串=字符串;
}
});
返回最大的字符串;
}
var arr=新数组(“”,'aa','test')

log(findLargestString(arr))您的代码对我来说似乎运行良好

让最大的字符串;
函数findLargestString(字符串){
让最大字符串=“”;
strings.forEach((string)=>{
if(string.length>largestString.length){
最大字符串=字符串;
}
});
返回最大的字符串;
}
var arr=新数组(“”,'aa','test')

log(findLargestString(arr))
您已在函数中使用
let
声明了
largestString
。从该行中删除
let
关键字。另外,结尾的
返回值是不必要的。我尝试了你的代码,没有错误,这里是“Implement[a]函数,它将设置顶部定义的
最大字符串
变量…”-哎哟。这是一种可怕的做法。您做了正确的事情,并使用了
返回值。当然,这不适用于有缺陷的测试。您已在函数中使用
let
声明了
largestString
。从该行中删除
let
关键字。另外,结尾的
返回值是不必要的。我尝试了你的代码,没有错误,这里是“Implement[a]函数,它将设置顶部定义的
最大字符串
变量…”-哎哟。这是一种可怕的做法。您做了正确的事情,并使用了
返回值。当然,这不适用于有缺陷的测试。该人员正在向在线“评分”系统提交代码。系统显然希望将相对全局的
最大字符串
设置为运行该功能的副作用。此人正在将代码提交给在线“评分”系统。系统显然希望将相对全局的
最大字符串设置为运行函数的副作用。