为什么效果不一样?

来源:5-4 编程练习

Aurora_Meteor

2020-03-17 13:04:06

<!DOCTYPE html>

<html lang="en">


<head>

    <meta charset="UTF-8">

    <title>5-4</title>

</head>


<body>

    <script>

        //补充代码 

        function Student() {

            var privateStore = {

                name: '张宇',

                sex: '男',

                age: 18

            };


            function _set(name, sex, age) {

                privateStore.name = name;

                privateStore.sex = sex;

                privateStore.age = age;

            };


            function _get() {

                return '姓名:' + privateStore.name + '<br/>性别:' + privateStore.sex + '<br/>年龄:' + privateStore.age;

            };

            this.get = function () {

                return _get;

            }

            this.set = function () {

                return _set;

            }

        }

        var student = new Student();

        student.set()('小明', '男', '23');

        console.log(student.get()());

    </script>

</body>


</html>

我在练习的页面运行后结果如下

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

而在本地打开页面后结果如下

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

这是慕课的在线编辑器有问题吗?另外为什么本地的控制台打印结果它不换行呢?直接把<br/>打印出来了,控制台会默认把内容转换为字符串吗?还是因为什么呢?


写回答

2回答

好帮手慕夭夭

2020-03-17

同学你好,问题解答如下:

1.这个是在线编辑器的问题,不是代码问题。同学练习时,以本地测试结果为准即可。

2.<br/>是html标签,如果说在页面输出内容,可以使用<br/>,例如document.write("你好<br>你好"),这是给页面添加的文本内容,标签就会起到换行作用。但是这里console.log是在控制台输出的,那么要使用js中的换行符,如下

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

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

0
hurora_Meteor
h 是不是在页面中输出要换行只能用<br/>,在控制台换行只能用\n?我刚刚在页面输出使用\n效果只是一个空格。 另外我刚刚发现在线编辑器把<br/>去掉以后,在控制台就可以正常输出结果了...
h020-03-17
共1条回复

好帮手慕夭夭

2020-03-17

同学你好,没错,\n直接在页面中输出是不行的。另外,在线编辑器可能会有兼容性问题,同学以后练习时,直接在本地测试哦。

祝学习愉快 !

0

0 学习 · 14456 问题

查看课程