如何使用JS console.log()技巧提高工作效率


Posted in Javascript onOctober 14, 2020

我们知道 console.log(message)用法很简单,表示将参数message 打印到控制台上。

console.log('前端小智')
// 前端小智

const myAge = 28
console.log(myAge) // 28

本文主要介绍5个有用的技巧,可帮助你在使用console.log()时提高工作效率。

1. 打印全名变量

如果在控制台打印多个变量,是数量比较多的情况下,我们很难区别哪个变量对应哪个值。

function sum(a, b) {
console.log(b);
return a + b;
}

sum(1, 2);
sum(4, 5);

执行上述代码后,我们只会看到一系列数字

要表示值和变量之间关系,可以用花括号把变量包起来:{b}:

2.高级格式化

将某些东西打印到控制台最常见方法是简单地使用一个参数调用console.log():

console.log('前端小智') // 前端小智

有时我们可能想要一条包含多个变量的信息。 幸运的是,console.log()可以使用%s,%i等说明符以sprintf()的方式格式化字符串。

const user = '前端小智';
const attempts = 5;

console.log('%s 登录失败了 %i 次', user, attempts);
// 前端小智 登录失败了 5 次

%s和%i被user和attempts的值替换。 说明符%s转换为字符串,而%i转换为数字。

以下是可用说明符的列表:

说明符 作用
%s 元素转换为字符串
%d 或 %i 元素转换为整数
%f 元素转换为浮点数
%o 元素以最有效的格式显示
%O 元素以最有效的格式显示
%c 应用提供的css

3.具有样式的打印风格

浏览器控制台允许我们将样式应用于打印的消息,我们可以通过将%c说明符与相应的css样式一起使用来实现,如下所示:

console.log('%c Big message', 'font-size: 36px; font-weight: bold');

说明符%c应用CSS样式'font-size: 36px; font-weight: bold'

4. 交互展示

日志样式化依赖于主机的控制台实现。像Chrome和Firefox这样的浏览器提供对象和数组的交互展示,而 Node 控制台输出为文本。

来看看Chrome如何打印普通对象,数组和DOM树,可以通过展开和折叠与这些元素进行交互。

4.1 Objects

const myObject = {
 name: 'John Smith',
 profession: 'agent'
};
console.log(myObject);

可以展开和折叠对象属性列表,也可以看到对象的原型。

4.2 Arrays

const characters = ['Neo', 'Morpheus', 'John Smith'];

console.log(characters);
4.3 DOM 树结构

我们可以直接与控制台中显示的DOM元素进行交互。

console.log(document.getElementById('root'));

在Chrome控制台中,可以扩展DOM元素

4.4 交互式嵌套里的消息

%o说明符(为值关联了正确的打印格式)可以在文本消息中插入数组,对象,DOM元素和常规文本,而不会失去交互性。

const myObject = {
 name: 'John Smith',
 profession: 'agent'
};

console.log('Neo, be aware of %o', myObject);

从控制台看,myObject数组不会转换为字符串,而是保持交互性。

5.在 Node 控制台中打印大对象

Node中的log以纯文本形式输出。 但是,Node 中的console.log()不会显示具有深层嵌套的对象:第3级的对象显示为[Object]。

const myObject = {
 propA: {
  propB: {
   propC: {
    propD: 'hello'
   }
  }
 }
};

console.log(myObject);

运行脚本时,propC的对象打印为[Object]:

如何使用JS console.log()技巧提高工作效率

要查看完整的对象结构,可以使用jsON.stringify():

const myObject = {
 propA: {
  propB: {
   propC: {
    propD: 'hello'
   }
  }
 }
};

console.log(jsON.stringify(myObject, null, 2));

JSON.stringify(myObject, null, 2)返回该对象的JSON表示形式,第三个参数2在空格中设置缩进大小。

如何使用JS console.log()技巧提高工作效率

希望这5个技巧可以使你使用 console.log() 体验更加高效。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery 确定css方框模型(盒模型Box Model)
Jan 22 Javascript
JavaScript判断密码强度(自写代码)
Sep 06 Javascript
Javascript中克隆一个数组的实现代码
Dec 06 Javascript
jQuery实现提交按钮点击后变成正在处理字样并禁止点击的方法
Mar 24 Javascript
浅析JavaScript动画
Jun 10 Javascript
一个简单不报错的summernote 图片上传案例
Jul 11 Javascript
又一枚精彩的弹幕效果jQuery实现
Jul 25 Javascript
jquery.validate[.unobtrusive]和Bootstrap实现tooltip错误提示问题分析
Oct 30 Javascript
简单实现JS倒计时效果
Dec 23 Javascript
微信小程序开发(二)图片上传+服务端接收详解
Jan 11 Javascript
完美的js图片轮换效果
Feb 05 Javascript
mpvue写一个CPASS小程序的示例
Sep 04 Javascript
JavaScript Blob对象原理及用法详解
Oct 14 #Javascript
基于javascript原生判断DOM是否加载完毕
Oct 14 #Javascript
JavaScript常用进制转换及位运算实例解析
Oct 14 #Javascript
Vue实现鼠标经过文字显示悬浮框效果的示例代码
Oct 14 #Javascript
JavaScript本地储存:localStorage、sessionStorage、cookie的使用
Oct 13 #Javascript
原生JS实现相邻月份日历
Oct 13 #Javascript
jquery简易手风琴插件的封装
Oct 13 #jQuery
You might like
php数组去重的函数代码
2013/02/03 PHP
php+mysqli事务控制实现银行转账实例
2015/01/29 PHP
php实现可运算的验证码
2015/11/10 PHP
详解PHP匿名函数与注意事项
2016/03/29 PHP
php cookie用户登录的详解及实例代码
2017/01/03 PHP
基于Laravel(5.4版本)的基本增删改查操作方法
2019/10/11 PHP
jquery 插件学习(四)
2012/08/06 Javascript
JavaScript 验证码的实例代码(附效果图)
2013/03/22 Javascript
javascript 获取元素样式必杀技
2014/05/04 Javascript
iframe调用父页面函数示例详解
2014/07/17 Javascript
基于jquery实现下拉框美化特效
2016/02/02 Javascript
JavaScript数组操作函数汇总
2016/08/05 Javascript
轻松理解JavaScript闭包
2017/03/14 Javascript
详解Vue中添加过渡效果
2017/03/20 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
Jquery+AJAX实现无刷新上传并重命名文件操作示例【PHP后台接收】
2020/05/29 jQuery
基于JavaScript的数据结构队列动画实现示例解析
2020/08/06 Javascript
Python with的用法
2014/08/22 Python
解析Python中的二进制位运算符
2015/05/13 Python
python脚本实现数据导出excel格式的简单方法(推荐)
2016/12/30 Python
Tensorflow卷积神经网络实例
2018/05/24 Python
浅谈python中统计计数的几种方法和Counter详解
2019/11/07 Python
python异常处理、自定义异常、断言原理与用法分析
2020/03/23 Python
Python socket服务常用操作代码实例
2020/06/22 Python
html5 canvas 使用示例
2010/10/22 HTML / CSS
html5借用repeating-linear-gradient实现一把刻度尺(ruler)
2019/09/09 HTML / CSS
美国隐形眼镜零售商:LensPure
2019/03/10 全球购物
JavaScript实现前端网页版倒计时
2021/03/24 Javascript
银行门卫岗位职责
2013/12/29 职场文书
《少年王勃》教学反思
2014/04/27 职场文书
婚礼证婚人演讲稿
2014/09/13 职场文书
2014年残联工作总结
2014/11/21 职场文书
教师个人考察材料
2014/12/16 职场文书
工程质检员岗位职责
2015/04/08 职场文书
2016年学习贯彻十八届五中全会精神心得体会
2016/01/05 职场文书
MySQL中日期型单行函数代码详解
2021/06/21 MySQL