1、console.assert()

在浏览器中当console.assert()方法接受一个值为假断言时,会向控制台输出传入的内容,但并不会中断代码的执行

const errorMsg = 'the # is not even';
for (let number = 2; number <= 5; number += 1) {
    console.log('the # is' + number);
    console.assert(number % 2 === 0, {
        number: number,
        errorMsg: errorMsg
    });
}

2、console.clear()

清空控制台输出信息

<button>清空控制台输出信息</button>
<script>
    //  该特性是非标准的,请尽量不要在生产环境中使用
    for (var i = 0; i < 10; i++) {
        console.log(i);
    }
    document.getElementsByTagName("button")[0].onclick = function() {
        console.clear();
    }
</script>

3、console.count()

输出 console.count()被调用的次数

该特性是非标准的,请尽量不要在生产环境中使用它!

// 无参:默认 default
var user = "";

function greet() {
    console.count();
    return "hi" + user;
}

user = "bob";
greet(); // default:1
user = "alice";
greet(); // default:2
greet(); // default:3
setInterval(function() {
    greet(); // default:4
}, 5000);
/*
   console.count(arg)
   arg: 代表计算器的名称
*/
var user = "";

function greet() {
    console.count(user);
    return "hi " + user;
}

user = "bob";
greet(); // bob: 1
user = "alice";
greet(); // alice:1
greet(); // alice:2
// 全局获取名为 bob 的定时器执行次数
console.count("bob"); // bob:2

4、console.countReset()

重置计数器

var user = "";

function greet() {
  console.count();
  return "hi " + user;
}

user = "bob"; 
greet(); // default: 0
user = "alice";
greet(); // default: 1
greet(); // default: 2
console.count(); // default: 3
console.countReset(); // default: 0
var user = "";

function greet() {
  console.count(user);
  return "hi " + user;
}

user = "bob";
greet(); // bob: 1
user = "alice";
greet(); // alice: 1
greet(); // alice: 2
console.countReset("bob"); // bob: 0
console.count("alice"); // alice: 3
console.count("bob"); // bob: 1

5、console.debug()

输出“调试”级别的消息且仅仅控制台配置为显示调试输出时才显示该消息

6、console.dir()

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

该特性是非标准的,请尽量不要在生产环境中使用它!

console.dir(Object);

r语言清除values r语言清除console_r语言清除values

7、console.dirxml()

显示一个明确的XML/HTML元素的包括所有后代元素的交互树。 如果无法作为一个element被显示,那么会以JavaScript对象的形式作为替代

该特性是非标准的,请尽量不要在生产环境中使用它!

console.dirxml(document);

r语言清除values r语言清除console_r语言清除values_02

8、console.log()

向 web控制台 输出一条消息

console.log("这是一条信息");

r语言清除values r语言清除console_生产环境_03

9、console.error()

向 web控制台 输出一条错误信息

console.error("这是一条错误信息");

r语言清除values r语言清除console_html5_04

10、console.info()

向 web控制台 输出一个通知信息。仅在Firefox,web控制台的日志中的项目旁边会显示一个小的‘I‘图标

console.info("这是一条通知信息");

r语言清除values r语言清除console_生产环境_05

11、console.warn()

向 web 输出一个警告信息

console.warn("这是一条警告信息");

r语言清除values r语言清除console_r语言清除values_06

12、console.group()

在 web控制台 上创建一个新的分组.随后输出到控制台上的内容都会被添加一个缩进,表示该内容属于当前分组,直到调用console.groupEnd()之后,当前分组结束.

console.group("第一组");
console.log("第一组第一个");
console.log("第一组第二个");
console.groupEnd();

r语言清除values r语言清除console_r语言清除values_07

13、console.groupCollapsed()

console.group的用法一致,唯一不同的地方是:console.groupCollapsed()是被折叠的,console.group是打开的

console.groupCollapsed("第一组");
console.log("第一组第一个");
console.log("第一组第二个");
console.groupEnd();

r语言清除values r语言清除console_生产环境_08

14、console.time()

计算一段特定操作的周期

console.time();
$.get({
    url: "http://39.104.61.32:3000/top/album",
    data: {
        offset: 2,
        limit: 20,
        area: "ZH"
    },
    success: function(res) {
        console.log(res);
        console.timeEnd();
    }
})

15、console.trace()

先 web控制台 输出一个堆栈跟踪

function foo() {
    function bar() {
        console.trace();
    }
    bar();
}
foo()

r语言清除values r语言清除console_r语言清除values_09

16、console.table()

将数据以表格的形式显示

  • 打印单一参数类型(数组)
console.table(["apples", "oranges", "bananas"]);

r语言清除values r语言清除console_r语言清除values_10

  • 打印单一参数类型(对象)
function Person(firstName, lastName) {
    this.firstName = firstName;
    this.lastName = lastName;
}
var me = new Person("John", "Smith");
console.table(me)

r语言清除values r语言清除console_javascript_11

  • 打印复合的参数类型(数组嵌套数组)
var people = [["John", "Smith"], ["Jane", "Doe"], ["Emily", "Jones"]];
console.table(people);

r语言清除values r语言清除console_html5_12

  • 打印复合的参数类型(数组嵌套对象)
function Person(firstName, lastName) {
    this.firstName = firstName;
    this.lastName = lastName;
}

var john = new Person("John", "Smith");
var jane = new Person("Jane", "Doe");
var emily = new Person("Emily", "Jones");

console.table([john, jane, emily]);

r语言清除values r语言清除console_html5_13

var family = {};
family.mother = john;
family.father = jane;
family.daughter = emily;
console.table(family);

r语言清除values r语言清除console_生产环境_14

  • 选择要显示的列
console.table([john, jane, emily], ["firstName"]);

r语言清除values r语言清除console_前端_15

  • 自定义显示列的顺序
console.table([john, jane, emily], ["firstName", "lastName"]);

r语言清除values r语言清除console_r语言清除values_16