3-31练习

来源:3-31 编程练习

weixin_慕哥8086897

2019-01-04 11:25:55

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>首字母变大写</title>
</head>
<body>
<script>
    //补充代码
    function szm(str){
        var arr=str.split(" ");
        for(var i=1,len=arr.length;i<len;i++){
            var s=arr[i];
            var n+=s.charAt(0).toUpperCase()+s.slice(1);
        }return n
    }
    var g=szm(all time is no time when it is past);
    document.write(g)
</script>
</body>
</html>


写回答

3回答

山河远阔ZZ

2019-01-04

s是用来存放每个单词的,是个变值,每循环一次,s的值就会发生改变,所以s写在for循环里面。如果变量是个固定的值,就写在for外面,如果变量需要变,就写在for循环里面。

0

山河远阔ZZ

2019-01-04

把n定义在for循环的外面,参考下图:

http://img.mukewang.com/climg/5c2efb030001051309370418.jpg

0
heixin_慕哥8086897
h 为什么s要定义在for循环里 我刚才试了下如果s定义在外无显示,就是想问什么需要定义在内什么需要定义在外 谢
h019-01-04
共1条回复

山河远阔ZZ

2019-01-04

同学你好,代码中有两出问题:

1、传进去的实参是个字符串,需要加引号引起来,参考下图:

http://img.mukewang.com/climg/5c2ef0280001bf6e06880029.jpg

2、因为变量n存放的是一个字符,所以先定义一下n的变量,参考下图:

http://img.mukewang.com/climg/5c2ef1c70001405007960321.jpg

自己测试一下,祝学习愉快,望采纳!

0
heixin_慕哥8086897
h <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>首字母变大写</title> </head> <body> <script> //补充代码 function szm(str){ var arr=str.split(" "); for(var i=1,len=arr.length;i<len;i++){ var s=arr[i]; var n=""; n+=s.charAt(0).toUpperCase()+s.slice(1)+" "; }return n } var g=szm("all time is no time when it is past"); document.write(g) </script> </body> </html> 这样改完就有个Past,其他没有显示
h019-01-04
共1条回复

0 学习 · 36712 问题

查看课程

相似问题

3-31练习

回答 1

3-15练习

回答 2