Console 3000字完整指南,让你不只会用console,html标签之列表标签

前言


为啥会突然想起写一篇关于console的文章?笔者接触JS也不少时间了,除了用vscode的debuger,其实大部分时间都在使用console.log()方法来输出一些或者调试程序,我相信很多刚开始接触JS的同志,应该也都习惯使用console.log()。但是log的能力是有限的,并不能满足所有的场景。比如我们相用表格数据对象。

下面这张图,纯粹是看了扫黑风暴想到的!!!

console.log()


大家最常用的应该就是这个属性了,不过你有没有使用这个方法输出console对象。

console.log(console)

语法


console.log(常见JS数据)

console.log(123)

123

console.log( %s %d %f %o 等占位符写法(类似C的print))

console.log(‘我是 %s’,‘前端picker’)

我是 前端picker

console.log(ES6 模板字符串)

const nickName = “前端picker”

console.log(`我是 ${nickName}``)

我是 前端picker

数组/对象会显示在一行

console.log({object: ‘object’}, {object: ‘object’});

console.log([‘array’, ‘array’], [‘array’, ‘array’]);

CSS样式美化输出

在上面我们介绍了占位符输出,其实还有占位符%c,可以用来接收css样式。

console.log(‘我是红色 %c 文字’, ‘color: red;’);

每个%c只负责它之后的文字,知道遇到下一个%c;

console.log(‘This is %cred text %c 我没颜色 %c 我是绿色.’, ‘color: red;’, ‘’, ‘color: green;’);

当然你也可以选择把样式定义成变量。

let style=“background: white;border: 3px solid red;color: red;font-size: 50px;margin: 40px;padding: 20px;”

undefined

console.log(‘%c我是log!’, style);

console.clear()


大部分的浏览器在开发者工具都内置了清除控制条的方法。

其实console对象也提供了clear方法来清空控制台。

当你执行console.clear()之后

cosole.debug()


输出“调试”级别的消息,并且在浏览器中只有你配置了debug才可以显示。

例如在火狐浏览器中:

当你没有勾选调试的时候:是无法显示debug的信息的。

只有你勾选调试的时候,才会显示。

error()


向 Web 控制台输出一条错误消息,并且只有才浏览器配置了errors才可以显示。

下图是在火狐浏览器的效果

下图是在chrome的效果

两个浏览器都会在error的前面加上一个小图标。

info()


向web控制台输出一个通知信息,并且只有在浏览器配置info可见的时可以显示。

下图是在火狐浏览器的效果

下图是在chrome的效果

在火狐浏览器中会在前面加上小图标,而chrome没有

warn()


向 Web 控制台输出一条警告信息,并且只有在浏览器配置warning可见的时可以显示。

下图是在火狐浏览器的效果

下图是在chrome的效果

两个浏览器都会在warn的前面加上一个小图标。

console.count()


输出 count() 被调用的次数。此函数接受一个可选参数 label,如果你不设置参数的话,这个参数默认名叫**“default”**。

用来统计

console.count(‘我是’);

console.count(‘前端picker’);

console.count(‘我是’);

console.count(‘前端picker’);

console.count(‘我是’);

console.count(‘前端picker’);

通过下图可以看到,针对不同的参数,count()是分别累计的。

console.countReset()


用来重启计数器的.同样也接收一个label参数,

如果提供了参数label,此函数会重置与label关联的计数。

如果省略了参数label,此函数会重置默认的default计数器。

console.dir()


在控制台中显示指定JavaScript对象的属性,并通过类似文件树样式的交互列表显示。

也就是语法是:

console.dir(object)

const auther = {

name: ‘前端picker’,

age: ‘18’,

};

console.log(auther);

console.dir(auther);

在chrome浏览器中,是支持这个属性的,下图可以看出与log的不同

但是在火狐浏览器中,log和dir的输出一致,不同的是火狐会默认展开dir的结果。

当然log和dir在输出dom结构的时候是完全不同的。不过这个我们放在dirxml方法中学习。

console.dirxml()


显示一个明确的XML/HTML元素的包括所有后代元素的交互树。 如果无法作为一个element被显示,那么会以JavaScript对象的形式作为替代。 它的输出是一个继承的扩展的节点列表,可以让你看到子节点的内容。

同时也支持object。

在dir中我们把DOM留到了这里。

创建一个DOM对象

var childNode = document.createElement(‘p’);

childNode.innerHTML = ‘这里是提示信息〜〜’;

使用log/dir/dirxml输出

log

dir

dirxml

可以看出log和dirxml的输出效果是一致的,是以DOM的形式输出的,dir则输出的是属性的值。

group()、groupCollapsed() 和 groupEnd()


将不同的控制台输出组合在一起以显示它们之间的一种关系形式。通常是组合在一起使用的。

group接收一个参数,表示组名,如果不设置的话,在不同的浏览器表现不一致,浏览器默认展开组。

groupCollapsed()与group的不同在于groupCollapsed会自动折叠组。

groupEnd()表示组的结束。

group+groupEnd

console.group();

console.log(‘name:’);

console.log(‘前端picker’);

console.groupEnd();

console.group(‘参数’);

console.log(‘age’);

console.log(‘18’);

console.groupEnd();

下面是chrome的效果。不设置组名的话,默认是console.group,同时一组的输出会缩进。

下面是火狐的效果不设置组名的话,默认是<无组标签>

groupCollapsed+grounEnd

console.groupCollapsed();

console.log(‘name:’);

console.log(‘前端picker’);

console.groupEnd();

console.group(‘参数’);

console.log(‘age’);

console.log(‘18’);

console.groupEnd(‘参数’);

嵌套

console.group(‘下面是作者信息’);

console.log(‘第1项’);

console.group(‘name’);

console.log(‘前端picker’);

console.groupEnd();

console.log(‘第2项’);

console.group(‘age’);

console.log(‘18’);

console.groupEnd();

console.groupEnd();

CSS样式美化-%c

console.group(‘%c下面是作者信息’,‘color:red;’);

console.log(‘第1项’);

console.group(‘name’);

console.log(‘前端picker’);

console.groupEnd();

console.log(‘第2项’);

console.group(‘age’);

console.log(‘18’);

console.groupEnd();

console.groupEnd();

console.table()


这个方法需要一个必须参数,参数 必须是一个数组或者是一个对象;还可以使用一个可选参数 columns。

它会参数以表格的形式打印出来。数组中的每一个元素(或对象中可枚举的属性)将会以行的形式显示在表格中。

表格的第一列是 index。如果数据 data 是一个数组,那么这一列的单元格的值就是数组的索引。 如果数据是一个对象。

数组

let ary = [

‘1’,

‘2’,

‘3’

];

console.table(ary);

object对象

let obj = {

name: ‘前端picker’,

age: ‘18’,

};

console.table(obj);

对象数组

let aryOfObjects = [
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

技术是没有终点的,也是学不完的,最重要的是活着、不秃。零基础入门的时候看书还是看视频,我觉得成年人,何必做选择题呢,两个都要。喜欢看书就看书,喜欢看视频就看视频。最重要的是在自学的过程中,一定不要眼高手低,要实战,把学到的技术投入到项目当中,解决问题,之后进一步锤炼自己的技术。

技术学到手后,就要开始准备面试了,找工作的时候一定要好好准备简历,毕竟简历是找工作的敲门砖,还有就是要多做面试题,复习巩固。有需要面试题资料的朋友点击这里可以免费领取


全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。**

[外链图片转存中…(img-UO2NCy8d-1712087303126)]

[外链图片转存中…(img-8EmAWrQB-1712087303127)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

[外链图片转存中…(img-5rMruXLp-1712087303127)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

技术是没有终点的,也是学不完的,最重要的是活着、不秃。零基础入门的时候看书还是看视频,我觉得成年人,何必做选择题呢,两个都要。喜欢看书就看书,喜欢看视频就看视频。最重要的是在自学的过程中,一定不要眼高手低,要实战,把学到的技术投入到项目当中,解决问题,之后进一步锤炼自己的技术。

技术学到手后,就要开始准备面试了,找工作的时候一定要好好准备简历,毕竟简历是找工作的敲门砖,还有就是要多做面试题,复习巩固。有需要面试题资料的朋友点击这里可以免费领取

[外链图片转存中…(img-w9D5QIxk-1712087303128)]

  • 9
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值