老师,请问我的问题出在哪?
来源:3-31 编程练习
sunflower426
2019-12-12 16:25:20
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>首字母变大写</title>
</head>
<body>
<script>
//补充代码\
function bigword(str){
var arr=str.split(" "),newStr=arr[i];
for(var i=o,len=arr.length;i<len;i++){
var word=arr[i];
newStr=word.charAt(0).toUpperCase()+word.substr(1);
}
}
var littleword=bigword("all time is no time when it is past");
document.write(littleword);
</script>
</body>
</html>
1回答
同学你好,运行你的代码,在浏览器中,按下f12键,打开控制台,出现报错信息如下:

原因:在代码的12行将数字0写成了字符o, 导致变量o没有定义出现报错。(老师这里是12行,同学可能是其他行,根据控制台报错信息调试就可以了)
建议修改:

代码中存在的其他问题如下:
newStr初始化值为arr[i],此时的i还为声明,所以newStr值为undefined,后期拼接字符串的效果不对。
建议修改: 将newStr初始赋值为空字符串

for中需要使用+=运算符,对于转换的结果进行字符串拼接, 最后可以拼接一个空格,效果实现会更好。

最后,需要将拼接好的字符串return出去。

如果帮助到了你,欢迎采纳,祝学习愉快~
相似问题