别只用 console.log() 调试 js 代码了

2024-02-03 02:08
文章标签 代码 调试 js console log 只用

本文主要是介绍别只用 console.log() 调试 js 代码了,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

JavaScript中的 console 对象可用于访问浏览器调试控制台,可以用它在控制台中输出代码中变量的值。

不过大多数人都只过 console.log() 在浏览器控制台中进行输出调试。log 只是 console 对象的一种方法,除了它还有很多非常有用的方法。

1. console.log()

这个方法主要用于将传给它的值输出到控制台。可以给 log() 传递任何类型:可以是字符串,数组,对象,布尔值等。

console.log('JavaScript');
console.log(7);
console.log(true);
console.log(null);
console.log(undefined);
console.log([1, 2, 3]);
console.log({a: 1, b: 2, c: 3});

输出:

图片

2. console.error()

这个方法在测试代码时非常有用。它用于将错误输出到浏览器控制台。错误消息默认用红色突出显示。

console.error('Error found');

输出:

图片

3. console.warn()

这个方法用于向控制台抛出警告。警告消息默认以黄色突出显示。

console.warn('Warning!');

输出:

图片

4. console.clear()

这个函数用来清除控制台。如果控制台中充满了消息和错误信息,可以用它清除控制台,并在控制台中显示一条消息:Console was cleared 。

console.clear()

输出:

图片

5. console.time() 与 console.timeEnd()

这两种方法要相互结合使用。每当我们想知道一个代码块或函数所花费的时间时,都可以用 time()timeEnd() 方法。这两个函数都以字符串作为参数。使用时要对这两个函数用相同的字符串来测量时间。

console.time('timer'); const hello =  function(){
  console.log('Hello Console!');
}const bye = function(){
  console.log('Bye Console!');
}hello(); // calling hello();
bye(); // calling bye();console.timeEnd('timer');

输出:

图片

6. console.table()

这个方法可以在控制台中生成一个表格,能够提高可读性。它可以自动为数组或对象生成一个表。

console.table({a: 1, b: 2, c: 3}); 

输出:

图片

7. console.count()

可以在循环中用它来检查特定的值使用了多少次。

for(let i=0; i<3; i++){
  console.count(i);
}

输出:

图片

8. console.group() 和 console.groupEnd()

group() 和  groupEnd() 可以让我们把内容分组到一个单独的块中。就像  time()timeEnd() 一样,它们需要以相同值的标签作为参数。你还可以对组执行展开或折叠操作。

console.group('group1'); 
  console.warn('warning'); 
  console.error('error'); 
  console.log('I belong to a group'); 
console.groupEnd('group1'); 
console.log('I dont belong to any group');

输出:

图片

9. 为你的日志添加样式

还可以在控制台日志添加样式,使日志看起来更漂亮。只需要把 CSS 样式作为 log()  函数的第二个参数,同时第一个参数以 %c 开始即可。

const spacing = '10px'; 
const styles =  `padding: ${spacing}; background-color: white; color: red; font-style: italic; border: 1px solid black; font-size: 2em;`; 
console.log('%cI am a styled log', styles);

输出:

图片

总结

console 对象对代码调试非常有用。但是很多人通常只用 log 函数。从现在开始应该充分利用 console 对象,以便更轻松地调试并生动地查看浏览器日志。

这篇关于别只用 console.log() 调试 js 代码了的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/672684

相关文章

Nginx服务器部署详细代码实例

《Nginx服务器部署详细代码实例》Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务,:本文主要介绍Nginx服务器部署的相关资料,文中通过代码... 目录Nginx 服务器SSL/TLS 配置动态脚本反向代理总结Nginx 服务器Nginx是一个‌高性

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

JAVA项目swing转javafx语法规则以及示例代码

《JAVA项目swing转javafx语法规则以及示例代码》:本文主要介绍JAVA项目swing转javafx语法规则以及示例代码的相关资料,文中详细讲解了主类继承、窗口创建、布局管理、控件替换、... 目录最常用的“一行换一行”速查表(直接全局替换)实际转换示例(JFramejs → JavaFX)迁移建

Go异常处理、泛型和文件操作实例代码

《Go异常处理、泛型和文件操作实例代码》Go语言的异常处理机制与传统的面向对象语言(如Java、C#)所使用的try-catch结构有所不同,它采用了自己独特的设计理念和方法,:本文主要介绍Go异... 目录一:异常处理常见的异常处理向上抛中断程序恢复程序二:泛型泛型函数泛型结构体泛型切片泛型 map三:文

MyBatis中的两种参数传递类型详解(示例代码)

《MyBatis中的两种参数传递类型详解(示例代码)》文章介绍了MyBatis中传递多个参数的两种方式,使用Map和使用@Param注解或封装POJO,Map方式适用于动态、不固定的参数,但可读性和安... 目录✅ android方式一:使用Map<String, Object>✅ 方式二:使用@Param

SpringBoot实现图形验证码的示例代码

《SpringBoot实现图形验证码的示例代码》验证码的实现方式有很多,可以由前端实现,也可以由后端进行实现,也有很多的插件和工具包可以使用,在这里,我们使用Hutool提供的小工具实现,本文介绍Sp... 目录项目创建前端代码实现约定前后端交互接口需求分析接口定义Hutool工具实现服务器端代码引入依赖获

利用Python在万圣节实现比心弹窗告白代码

《利用Python在万圣节实现比心弹窗告白代码》:本文主要介绍关于利用Python在万圣节实现比心弹窗告白代码的相关资料,每个弹窗会显示一条温馨提示,程序通过参数方程绘制爱心形状,并使用多线程技术... 目录前言效果预览要点1. 爱心曲线方程2. 显示温馨弹窗函数(详细拆解)2.1 函数定义和延迟机制2.2

Springmvc常用的注解代码示例

《Springmvc常用的注解代码示例》本文介绍了SpringMVC中常用的控制器和请求映射注解,包括@Controller、@RequestMapping等,以及请求参数绑定注解,如@Request... 目录一、控制器与请求映射注解二、请求参数绑定注解三、其他常用注解(扩展)四、注解使用注意事项一、控制

JAVA Log 日志级别和使用配置示例

《JAVALog日志级别和使用配置示例》本文介绍了Java中主流的日志框架,包括Logback和Log4j2,并详细解释了日志级别及其使用场景,同时,还提供了配置示例和使用技巧,如正确的日志记录方... 目录一、主流日志框架1. Logback (推荐)2. Log4j23. SLF4J + Logback

C++简单日志系统实现代码示例

《C++简单日志系统实现代码示例》日志系统是成熟软件中的一个重要组成部分,其记录软件的使用和运行行为,方便事后进行故障分析、数据统计等,:本文主要介绍C++简单日志系统实现的相关资料,文中通过代码... 目录前言Util.hppLevel.hppLogMsg.hppFormat.hppSink.hppBuf