Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.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_Function_Object - Fatal编程技术网

Javascript 未定义在常量中保存函数返回

Javascript 未定义在常量中保存函数返回,javascript,function,object,Javascript,Function,Object,我在一个小的JS应用程序上挑战自己,它是关于几个篮球队的,我在那里计算三场比赛的平均得分。 我被一件基本的事情困住了,我不明白 首先是代码: // simple stringbuilder function function appendStringBuilder(string, tag) { return document.querySelector(tag).append(string); } // function calculates average score of team f

我在一个小的JS应用程序上挑战自己,它是关于几个篮球队的,我在那里计算三场比赛的平均得分。 我被一件基本的事情困住了,我不明白

首先是代码:

// simple stringbuilder function
function appendStringBuilder(string, tag) {
  return document.querySelector(tag).append(string);
}

// function calculates average score of team
function avgScoreCalc(obj) {
  const values = Object.values(obj);
  let avgSum = 0;
  for (var i = 0; i < values.length; i++) {
    if (Number.isInteger(values[i])) {
      avgSum += values[i];
    }
  }
  avgSum = avgSum / 3;
  return Math.round(avgSum);
}

function challenge2(ObjName, teamName, firstGame, secondGame, thirdGame) {
  var ObjName = {
    teamName: teamName,
    firstGame: firstGame,
    secondGame: secondGame,
    thirdGame: thirdGame,
  };
  avgScoreCalc(ObjName);
  return appendStringBuilder(`${ObjName.teamName}: ${avgScoreCalc(ObjName)} | `, '.code-output-2');
  }

// IS UNDEFINED, WHY? <<<<
const TJohn = challenge2('TJohn', 'Team John', 89, 120, 103);
//----------------------------------------------------------

console.log(TJohn); //<<<< 'undefined'
//简单的stringbuilder函数
函数appendStringBuilder(字符串、标记){
返回文档.querySelector(标记).append(字符串);
}
//函数计算团队的平均分数
函数avgScoreCalc(obj){
常量值=对象值(obj);
设avgSum=0;
对于(变量i=0;i未定义
。当您从
appendStringBuilder
返回该调用的结果,并再次返回该结果,然后最终将其分配给一个变量时,该变量在末尾是
未定义的
也就不足为奇了。

不返回任何内容,也就是
未定义的
。当您从
appendStringBuilder
返回该调用的结果,并再次返回该结果,然后最终将其分配给一个变量时,该变量在末尾是
未定义的
就不足为奇了。

返回
未定义的
。你可能是有意的

function appendStringBuilder(string, tag) {
  document.querySelector(tag).append(string);
  return string;
}
返回未定义的
。你可能是有意的

function appendStringBuilder(string, tag) {
  document.querySelector(tag).append(string);
  return string;
}
看起来具有ObjName的challenge2函数的签名没有任何用处,因为您再次在其中创建了一个同名变量。另外,您在内部使用的其他函数没有任何定义。
查找更新的“challenge2”函数,该函数将适用于相同的应用程序。(仍然可以优化)
//函数计算团队的平均分数
函数avgScoreCalc(obj){
常量值=对象值(obj);
设avgSum=0;
对于(变量i=0;i
看起来具有ObjName的challenge2函数的签名没有任何用处,因为您再次在其中创建了一个同名变量。另外,您在内部使用的其他函数没有任何定义。
查找更新的“challenge2”函数,该函数将适用于相同的应用程序。(仍然可以优化)
//函数计算团队的平均分数
函数avgScoreCalc(obj){
常量值=对象值(obj);
设avgSum=0;
对于(变量i=0;i
appendStringBuilder正在返回undefinedYou没有函数appendStringBuilder(),如果确实创建了函数,请将其添加到您的问题中。抱歉,忘记将其放入,它已经存在。我把它添加到上面的代码中。返回
undefined
。appendStringBuilder正在返回undefined您没有函数appendStringBuilder(),如果确实创建了函数,请将其添加到问题中。抱歉,忘记将其放入,它已经存在。我把它添加到上面的代码中。返回未定义的
。非常感谢。但是它看起来不像我使用stringBuilder函数那样干净。你有没有办法优化我的stringBuilder函数?没有,我甚至不知道这个函数与字符串生成有什么关系。函数名不好,这个函数应该可以帮助我打印结果字符串。我想将其作为一个函数,以防止每次编写相同的代码输出。让我们将其称为html结果打印输出函数。然后我建议将其重命名为
printtoom
,并使其不返回任何内容。相反,让
challenge2
返回您想要的字符串,然后在调用站点将其存储在一个变量中,您可以将该变量打印到dom和控制台。非常感谢。但是它看起来不像我使用stringBuilder函数那样干净。你有没有办法优化我的stringBuilder函数?没有,我甚至不知道这个函数与字符串生成有什么关系。函数名不好,这个函数应该可以帮助我打印结果字符串。我想将其作为一个函数,以防止每次编写相同的代码输出。让我们将其称为html结果打印输出函数。然后我建议将其重命名为
printtoom
,并使其不返回任何内容。相反,让
challenge2
返回所需的字符串,然后在调用站点将其存储在一个变量中,您可以将该变量打印到dom和控制台。