新手求助:构建JavaScript年龄计算器遇到问题
解决你的JavaScript年龄计算器问题
嘿,作为自学编程的新手,遇到这种卡壳的情况太正常了——咱们一步步来拆解你的问题,很快就能搞定!
先看你代码里的几个关键问题:
- return语句后代码无法执行:你把
console.log(ageCalculator(...))放在了函数的return后面,而return会直接结束函数运行,所以这行调用代码永远不会被执行。调用应该放在函数外部。 - 字符串拼接缺少空格:你拼接的字符串是
name + "is" + age + "years old.",这样输出会变成类似Mikeis34years old.,缺少必要的空格,可读性很差,应该在"is"前后、"years"前加空格。 - 函数调用参数不全:你调用的时候只写了
"Mi...",但函数需要三个参数:名字、出生年份、当前年份,必须传全才能正确计算。
这里是修正后的完整代码:
function ageCalculator(name, yearOfBirth, currentYear) { var age = currentYear - yearOfBirth; // 给字符串拼接加上必要的空格 return name + " is " + age + " years old."; } // 把函数调用放在函数外面,并且传入完整的三个参数 console.log(ageCalculator("Mike", 1990, 2024));
运行这段代码,就会输出Mike is 34 years old.,完全符合作业要求啦。
另外给你个小建议:以后写函数的时候,可以先写完函数体,再在外部调用测试,这样能避免把调用放在return后面的问题;字符串拼接的时候也可以用模板字符串(用反引号`包裹),写法更简洁,比如:
return `${name} is ${age} years old.`;
这种方式不需要手动拼接加号,也不容易漏加空格,新手用起来更省心~
内容的提问来源于stack exchange,提问作者TorontoJ10
相关产品推荐
相关产品推荐

