JS console.log()方法调试代码
2023-06-13 09:12:02 时间
在 JS 中,除了使用 alert() 调试代码外,我们还常常使用 console 对象的 log() 对 JS 程序进行调试,console.log() 方法的作用是在浏览器的控制台中输出指定的参数值。
alert() 会阻塞 JS 程序的执行,不单击 确定 按钮,后续代码无法继续执行;而 console.log() 仅在控制台中打印相关信息,不会阻塞 JS 程序的执行。 对于输出内容为对象时,console.log() 输出的对象能看到对象结构;而 alert() 则是以 [object object] 格式输出对象,无法看到对象结构。![console.log()的输出结果](http://ytso-blog-oss-img.oss-cn-beijing.aliyuncs.com/wp-content/uploads/2021/07/20/20210720_60f643b1e0a5d.gif)
图 1:console.log() 的输出结果 刷新图 1 所示页面,可看到几乎在控制台显示结果的同时,也显示了表单输入框,可见 console.log() 不会阻塞 JS 程序的执行。
需要注意的是,在一些较低版本的浏览器,比如 IE6 以及没装 Firebug 插件的较低版本的 Firefox 等浏览器中是不能使用 console.log() 的。现在 IE11 以及较新版本的 Firefox 和 Chrome 不用安装任何插件,都具备调试功能,对这些浏览器,window 对象会自动注册一个名为 console 的成员变量,指代调试工具中的控制台。
console.log() 的使用语法如下:
console.log(msg);
log() 方法的参数 msg 和 alert() 的参数用法一样,也可以是任意值;但当参数为非空对象时,不同于 alert() 输出的是 [object object] 格式的内容,log() 的输出内容包含对象的结构内容。
就调试作用来说,alert() 和 console.log() 方法类似,但相比于 alert(),使用 console.log() 是一种更好的方式,原因如下:
alert() 会阻塞 JS 程序的执行,不单击 确定 按钮,后续代码无法继续执行;而 console.log() 仅在控制台中打印相关信息,不会阻塞 JS 程序的执行。 对于输出内容为对象时,console.log() 输出的对象能看到对象结构;而 alert() 则是以 [object object] 格式输出对象,无法看到对象结构。
【例 1】使用 console.log() 方法调试代码。
!doctype html html head meta charset= utf-8 title 使用console.log()方法调试代码 /title script window.onload = function (){ var sum = 0,i = 1; var oText = document.getElementById( val while(sum 20){ sum += i; console.log( sum= + sum); //跟踪sum变量的值 console.log( i= + i); //跟踪变量i的值 i++; oText.value = sum; /script /head body 累加结果: input id= val type= text / /body /html
上述代码在 Chrome 浏览器中执行后,同时按Ctrl+Shift+I组合键(对 Mac 苹果电脑使用的是Command+Option+I组合键),打开 Chrome 浏览器的 开发者工具 ,默认将打开 Console 浏览器控制台,在控制台中查看各个 console.log() 的输出结果,可看到图1 所示的结果。、
![console.log()的输出结果](http://ytso-blog-oss-img.oss-cn-beijing.aliyuncs.com/wp-content/uploads/2021/07/20/20210720_60f643b1e0a5d.gif)
图 1:console.log() 的输出结果 刷新图 1 所示页面,可看到几乎在控制台显示结果的同时,也显示了表单输入框,可见 console.log() 不会阻塞 JS 程序的执行。
23931.html
html相关文章
- Fabric.js 使用纯色遮挡画布(前景色)
- js书写原生ajax,JS 原生ajax写法
- js面试题及答案2020_JS面试题大全
- js 手动触发input事件
- html js 全局 变量,JS定义全局变量
- 初识js中的闭包_Js闭包中变量理解
- js正则使用变量_js正则表达式语法大全
- js定时器与延时器_JS做定时器倒计时
- 【学习笔记】黑马程序员Node.js全套入门教程 | 基础篇
- js传递数组到后台
- 原生 JS 实现 HTML 转 Markdown ,html2md.js
- 不影响开发体验,如何将单体 Node.js 变成 Monorepo
- 如何使用jscythe并通过Node.js的Inspector机制执行任意JS代码
- 给 Javascript 加上面向对象的属性:Class.js
- ORA-16029: cannot change LOG_ARCHIVE_MIN_SUCCEED_DEST, no archive log destinations ORACLE 报错 故障修复 远程处理
- java-json与js-json转化详解编程语言
- 探索Linux下查看Log的方法(linux查看log命令)
- 使用JS连接MySQL数据库:实现化繁为简(js连接mysql数据库)
- 创建JS文件:在Linux下实现自动化任务(linux创建js文件)
- Linux上的JS压缩工具(js压缩工具linux)
- 深入了解Linux的打印Log(linux打印log)
- 使用JavaScript在Oracle中执行函数(js执行oracle函数)
- 使用JS操作Oracle数据库探索潜在可能性(js和oracle数据库)
- js实现的修改div里img标签的src属性
- 工作中常用到的JS表单验证代码(包括例子)
- js模拟权限选择实现代码(select操作)
- JS将所有对象s的属性复制给对象r(原生js+jquery)
- Node.js中使用Log.io在浏览器中实时监控日志(等同tail-f命令)