console 让 js 调试更简单

浏览器的控制台(console)是最重要的面板,主要作用是显示网页加载过程中产生各类信息。

显示信息

console.log(‘hello world‘);
console.debug(‘debug‘);
console.info(‘信息‘);
console.error(‘错误‘);
console.warn(‘警告‘);

最常用的就是 console.log 了。

占位符

console 对象还可以使用 printf 风格的占位符。不过只支持字符(%s)、整数(%d 或 %i)、浮点数(%f)、对象(%o)和 css 样式(%c)。

var person = {};
person.name = ‘Jack‘;
person.age = 30;
console.log(‘%o‘, person);
console.log(‘%d年%d月%d日‘, 2016, 08, 23);
console.log(‘圆周率:%f‘, 3.1415926);
console.log(‘%c改变文本颜色‘, ‘color:green;‘);

信息分组

console.group("第一组信息");
console.log("第一组第一条");
console.log("第一组第二条");
console.groupEnd();
console.group("第二组信息");
console.log("第二组第一条");
console.log("第二组第二条");
console.groupEnd();

查看对象的信息

console.dir() 可以显示一个对象所有的属性和方法。

var person = {};
person.name = ‘Jack‘;
person.age = 30;
person.talk = function(str) {
    console.log(str);
}
console.dir(person);

显示某个节点的内容

console.dirxml() 用来显示网页的某个节点(node)所包含的 html/xml 代码。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="renderer" content="webkit">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <title>Document</title>
</head>
<body>
    <table id="table">
        <tr>
            <td>1</td>
            <td>2</td>
            <td>3</td>
        </tr>
    </table>
</body>
</html>
<script>
var oTable = document.getElementById(‘table‘);
console.log(oTable);
</script>

判断是否为真

console.assert() 用来判断一个表达式或变量是否为真。如果结果为否,则在控制台输出一条相应信息,并且抛出一个异常。

console.assert(1);
console.assert(1 === 2);

追踪函数的调用轨迹

console.trace() 用来追踪函数的调用轨迹。

function add(a, b) {
    console.trace();
    return a + b;
}
var x = add3(1, 1);  
function add3(a, b) {
    return add2(a, b);
}  
function add2(a, b) {
    return add1(a, b);
}  
function add1(a, b) {
    return add(a, b);
}

运行后,会显示 add() 的调用轨迹,从上到下依次为 add()add1()add2()add3()

计时功能

console.time() 和 console.timeEnd(),用来显示代码的运行时间。

console.time(‘计时器一‘);
for (var i = 0; i < 1000; i++) {
    for (var j = 0; j < 1000; j++) {}
}
console.timeEnd(‘计时器一‘);

性能分析

性能分析(Profiler)就是分析程序各个部分的运行时间,找出瓶颈所在,使用的方法是console.profile()

假定有一个函数 Foo(),里面调用了另外两个函数 funcA() 和 funcB(),其中 funcA() 调用 10 次,funcB() 调用 1 次。

function Foo() {
    for (var i = 0; i < 10; i++) {
        funcA(1000);
    }
    funcB(10000);
}

function funcA(count) {
    for (var i = 0; i < count; i++) {}
}

function funcB(count) {
    for (var i = 0; i < count; i++) {}
}

然后,就可以分析 Foo() 的运行性能了。

console.profile(‘性能分析器一‘);
Foo();
console.profileEnd();

参考资料

时间: 2024-08-02 23:51:22

console 让 js 调试更简单的相关文章

【转】九个Console命令,让js调试更简单

一.显示信息的命令 1: <!DOCTYPE html> 2: <html> 3: <head> 4: <title>常用console命令</title> 5: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 6: </head> 7: <body> 8: <script

[转]九个Console命令,让js调试更简单

转自:九个Console命令,让js调试更简单 一.显示信息的命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <!DOCTYPE html> <html> <head>     <title>常用console命令</title>     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" 

让js调试更简单—console

一.显示信息的命令 console.log 用于输出普通信息 console.info 用于输出提示性信息 console.error用于输出错误信息 console.warn用于输出警示信息 最常用的就是console.log了. 二.占位符 console上述的集中度支持printf的占位符格式,支持的占位符有:字符(%s).整数(%d或%i).浮点数(%f)和对象(%o): <script type="text/javascript"> console.log(&qu

九个Console命令,让js调试更简单

一.显示信息的命令 <!DOCTYPE html> <html> <head> <title>常用console命令</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <script type="text/javascri

九个Console命令,让 JS 调试更简单

一.显示信息的命令 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title>常用console命令</title> 5 <meta http-equiv="Content-Type"content="text/html; charset=utf-8" /> 6 </head> 7 <body> 8 <script type=&quo

八个console命令,让js调试更简单

一.显示信息的命令 console.log(); console.error('error'); console.warn('warning'); 二.信息分组 console.group("InformationName"); console.log("the first line"); console.log("the second line"); console.groupEnd(); 三.查看对象的属性和方法 console.dir();

九个 Console 命令,让 js 调试更简单

一.显示信息的命令 console.log('hello'); console.info('信息'); console.error('错误'); console.warn('警告'); 二.占位符 console上述的集中度支持printf的占位符格式,支持的占位符有:字符(%s).整数(%d或%i).浮点数(%f)和对象(%o) console.log("%d年%d月%d日",2011,3,26); 三.信息分组 console.group("第一组信息"); c

Console命令,让js调试更简单

一.显示信息的命令 console.log("normal"); // 用于输出普通信息 console.info("information"); // 用于输出提示性信息 console.error("error"); // 用于输出错误信息 console.warn("warn"); // 用于输出警示信息 二.点位符:字符(%s).整数(%d或%i).浮点数(%f)和对象(%o); console.log("%

9 个让 JavaScript 调试更简单的 Console 命令

一.显示信息的命令 <!DOCTYPE html> <html> <head> <title>常用console命令</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <script type="text/javascri