请帮忙看一下问题,谢谢
来源:6-11 编程练习
慕桂英7176016
2020-05-25 20:50:09
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>JavaScript</title>
<style>
</style>
</head>
<body>
<script>
var word=('all time is no time when it is past');
function capway(word){
var nums=word.split(' '),
up="";
//console.log(nums)
for(i=0;i<nums.length;i++){
//var newword=nums[i];
up =up+(nums[i].substr(0,1).toUpperCase()+nums[i].slice(1)+' ');
console.log(typeof(up)) //这里数据类型不应该还是数组吗,怎么是string呢
//console.log(newword)
}
return up; //这里如果我加 return up.join(" ") 为什么总是报错,不应该这个时候再把数组合并成字符串吗
}
var wired=capway(word);
document.write(wired)
</script>
</body>
</html>
1回答
好帮手慕夭夭
2020-05-26
同学你好,问题解答如下:
1.up默认值就是一个空字符串,也就是字符类型。当字符串与其他类型进行加号运算时,默认会进行字符串拼接,也就是结果还是一个字符串哦,所以不会是数组。

2.join是数组的方法,前面说了,up是一个字符串,字符串不能使用数组的join方法,所以会报错。
3.代码实现正确。
如果我的回答帮助到了你,欢迎采纳,祝学习愉快~
相似问题