• 听说你对 JavaScript 中的输出挺熟?


    前言

    在 JavaScript 中,不像 Java 等语言,它没有任何打印或者输出方法的,通常使用如下 4 种方式来输出数据。

    1. 使用 window.alert() 用于弹出警告框
    2. 使用 document.write() 将内容写入到 HTML 文档中
    3. 使用 innerHTML 写入到 HTML 元素
    4. 使用 console.log() 写入到浏览器的控制台

    以下分别使用它们来展示一个实例。

    window.alert()

    新建一个 HTML 文件,然后用 VSCode 写入如下代码。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>window.alert()</title>
        </head>
        <body>
            <p>弹窗显示</p>
            <script type="text/javascript">
                window.alert("这是一条弹窗测试!");
            </script>
    
        </body>
    </html>
    

    接着用浏览器打开上述文件,打开时就会显示如下弹窗,点击确定后弹窗关闭,然后在网页中显示内容。

    document.write()

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>document.write()</title>
        </head>
        <body>
            <p>写入 HTML 文档</p>
            <script type="text/javascript">
                document.write(Date());
            </script>
    
        </body>
    </html>
    

    新建 HTML 文件并写入上述内容后,浏览器打开,页面会显示如下内容,可以看到用 document.write() 写入当前时间是成功的。但是需要注意的是,如果 document.write() 是和其他内容同时在内容加载完之前加载,则可以和其他内容一起显示。但如果等页面内容已经完成加载后执行 document.write(),那么之前页面加载完的内容都将被写入的内容所覆盖。

    同时展示

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>document.write()</title>
        </head>
        <body>
            <p>写入 HTML 文档</p>
            <button onclick="showDate()">展示时间</button>
            <script type="text/javascript">
                function showDate() {
                    document.write(Date());
                }
            </script>
    
        </body>
    </html>
    

    以下则是等页面加载完成之后,执行 document.write() 前后对比,说明等页面加载完成后调用 document.write() 将覆盖之前的页面内容。

    image-20220228153609330

    innerHTML

    JavaScript 如果要访问某一个 HTML 元素,此时可以使用 document.getElementById(id) 方法,然后就可以利用 innerHTML 来获取或插入元素内容。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>innerHTML</title>
        </head>
        <body>
            <p id="inner">操纵 HTML 元素</p>
            <button onclick="changeContext()">点击修改上述内容</button>
    
            <script type="text/javascript">
                function changeContext() {
                    document.getElementById("inner").innerHTML = "修改后的内容";
                }
            </script>
    
        </body>
    </html>
    
    修改前 修改后

    console.log()

    要使用 console.log() 方法,需要我们的浏览器支持调试,一般推荐使用 Chrome。然后使用 F12 快捷键打开调试模式,在调试窗口中切换到 Console 菜单。我这里因为使用的是 Edge,所以显示的是控制台,这个主要根据自己的喜好进行浏览器的选择,但是一般更加推荐 Chrome。

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8" />
            <meta name="viewport" content="width=device-width, initial-scale=1">
            <title>console.log</title>
        </head>
        <body>
            <p>浏览器调试模式查看</p>
            <script type="text/javascript">
                var num1 = 11;
                var num2 = 10;
                console.log(num1 + num2);
            </script>
        </body>
    </html>
    

    总结

    以上就是关于 JavaScript 中输出的有关内容了,虽然不像 Java 那样有类似 System.out.println() 方法来进行打印和输出,但利用上述的 4 种方式,也能基本满足日常开发中的需求了。

    今天的内容就到此结束了,如果您觉得我的内容对您有所帮助,还请不吝你的赞,您的点赞、转发就是我不断更新的最大动力!

    关注公众号,获取最新文章更新
    公众号
  • 相关阅读:
    SpringCloud------链路追踪组件Sleuth
    SpringCloud------Zuul过滤器结合谷歌Gauva现实限流
    SpringCloud------Zuul网关
    极大团(maximal clique)算法:Born_kerbosch算法
    IDEA Cannot Resolve Symbol 问题的解决方法汇总
    idea 编译项目内存溢出OutMemoryError
    java 泛型和object比较
    java log4j 打日志到控制台同时打印到不同文件
    Java通过继承外部类来建立该外部类的protected内部类的实例(转)
    C#中的委托和事件
  • 原文地址:https://www.cnblogs.com/cunyu1943/p/15957238.html
Copyright © 2020-2023  润新知