Console对象的常用api学习记录


prtyaa
prtyaa 2023-12-26 18:39:48 64375
分类专栏: 资讯

Console对象

js中也有万物皆对象的定义,所以我们常用的console也是一个对象,自然是对象,那么其身上就会自带一些方法和属性。大家F12打开控制台以后,直接输入console回车,就可以看明细啦,如下图:

本文记录一下常用的console的api,细节来自于官方文档:Chrome DevTools中文手册:
里面还有其他很多谷歌开发工具的使用细节,大家没事的时候,可以多逛逛,必当大有裨益^_^

Console控制台api

1. console.assert()方法,一般使用的不多,相当于一个条件判断。比如有如下代码:

let isLogin = true
console.assert(isLogin, 'isLogin为false,当前处于未登录状态')
// 此时isLogin为true不会执行打印,如果为false的时候,就会打印提示:isLogin为false,当前处于未登录状态
// 相当于:
if(!isLogin){console.log('isLogin为false,当前处于未登录状态')} //图示如下:

2. console.clear()方法,也可以清空控制台,清空控制台,并输出 Console was cleared,图示如下:

3. console.count()方法,这个方法有点鸡肋,就是用来计数的,计数的话,我们使用console.log也是可以计数的。看代码就知道了

let arr = ['甲', '乙', '丙', '丁']
for (let i = 0; i < arr.length; i++) {
    console.count('console.count计数')
    console.log('console.log计数', i + 1)
} // 结果如下图:

4. console.debug()方法,和console.log()基本上一样,用的也少,不赘述

5. console.dir()方法,一般用于打印dom对象,查找其身上的属性,挺常用的。图示如下:

6. console.dirxml()方法,用于打印XML/HTML文档结构的方法,挺好。示例如下:

<body>
    <h1>
        <span>
            <h2>你好console.dirxml()</h2>
        </span>
    </h1>
    <script>
        let span = document.querySelector('h1')
        console.dirxml(span)
    </script>
</body>
// 打印图如下:

7. console.error()console.exception()方法,用于抛出错误到控制台,我们在编码过程中遇到的框架(vue/react)报错信息,都是被这个方法抛出来的。或者我们自己封装的函数方法,如果使用者没有按照正确的方式去使用,我们也可以使用这个方法,做一个抛错提示在控制台上,有助于更好的开发

8. console.warn()方法,同上,只不过这个是抛出警告,没有上面的抛出错误那么严重。毕竟对于程序员而言,警告不用管,报错才去看,哈哈

console.info()抛出一个信息

9. console.log(),万能狗皮膏药,最常用的方法,不赘述。毕竟遇事不决,console大法!

10. console.table()方法,用于在控制台打印一个table表格,比如我们把项目更新的版本号时间之类的信息,以表格的形式呈现在控制台上,代码和示例图如下:

let arr = [
    // 每个对象的key是表格每一列表头的数据,value是每一行的数据
    {
        edition: 'v1.0',
        author: '孙悟空',
        time: '2020-06-06',
    },
    {
        edition: 'v2.0',
        author: '猪八戒',
        time: '2021-07-07',
    },
    {
        edition: 'v3.0',
        author: '沙和尚',
        time: '2022-08-08',
    },
]
console.table(arr)
点击一下表头,还可以排序呢

11. cosole.time和console.timeEnd方法 用于计时的,看看自己的程序用了多久,一般用于性能优化时候的排查、时间监控之类的。比如可以算算一个循环执行了多长时间、比如可以可以算算一个递归执行了多长时间之类的。cosole.time相当于开始掐秒表,console.timeEnd相当于结束掐秒表。代码图示如下:

console.time() // 开始掐表表
for (let i = 0; i < 100; i++) { }
console.timeEnd() // 结束掐秒表
console.timeLog相当于记录中间的时间日志,用的不是特别多

12. console.trace()与console.log()基本上一样,不赘述

特殊控制台打印

  • %s 字符串格式(用的少)
  • %i 或 %d 整型格式(用的少)
  • %f 浮点格式(用的少)
  • %o DOM节点(用的少)因为:console.log('%o',document.body) == console.dirxml(document.body)
  • %O JavaScript 对象(用的少)因为:console.log('%O',document.body) == console.dir(document.body)
  • %c 对输出的字符串使用css样式,样式通过第二个参数指定。有几个%c 就要有几个对应的第二个参数。第二个参数,使用逗号分隔开(用的多、用的多、用的多)举例如下:
// 这里分别给孙悟空、猪八戒、沙和尚指定不同的样式
let content = "%c 孙悟空 %c 猪八戒 %c 沙和尚"
let styleSunWuKong = "color: white; background: black; padding:5px;"
let styleZhuBaJie = "color: green; background: pink; padding:5px;"
let styleShaHeShang = "color: yellow; background: purple; padding:5px;"
console.log(content, styleSunWuKong, styleZhuBaJie, styleShaHeShang); // 效果图如下:
  • 打印图片(背景图url的方式),代码效果图如下:
console.log(`%c `, `background-image: url(http://ashuai.work/static/img/avantar.66bb7908.png);
                    padding: 120px 120px;
                    background-size: cover;
                    background-repeat: no-repeat;
                    `
            )

谷歌开发者工具常用快捷键

  • F12打开控制台(Console面板)
  • Ctrl + Shift + I打开控制台(Console面板)
  • Ctrl + Shift + J打开控制台(Console面板)
  • Ctrl + Shift + C打开控制台(Elements面板)
  • Ctrl+[ 和 Ctrl+](在控制台不同的面板切换)
  • Ctrl + F当前页面搜所文字内容(除了代码中查找也可以在页面中查找对应的文字)
  • clear()在控制台输入即可清空控制台。或者在控制台获取焦点的情况下使用Ctrl + L也可以清空控制台
  • shift + enter可在控制台换行输入

调试鼠标悬浮弹出层样式步骤

比如el-menu鼠标悬浮出现二级弹框内容,但是鼠标移动走,二级弹框就消失了,这样就不太方便我们审查元素样式。于是乎,我们可以这样操作,图示如下:

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=31029
赞同 0
评论 0 条
prtyaaL1
粉丝 1 发表 2554 + 关注 私信
上周热门
银河麒麟添加网络打印机时,出现“client-error-not-possible”错误提示  1487
银河麒麟打印带有图像的文档时出错  1405
银河麒麟添加打印机时,出现“server-error-internal-error”  1194
统信操作系统各版本介绍  1116
统信桌面专业版【如何查询系统安装时间】  1114
统信桌面专业版【全盘安装UOS系统】介绍  1069
麒麟系统也能完整体验微信啦!  1026
统信【启动盘制作工具】使用介绍  672
统信桌面专业版【一个U盘做多个系统启动盘】的方法  616
信刻全自动档案蓝光光盘检测一体机  526
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

添加我为好友,拉您入交流群!

请使用微信扫一扫!