哇,console还有这么多不同的输出

29 阅读1分钟

是不是平时输出只会用console.log,那你就out了~

console.log

用于在控制台输出任何数据,其数据类型都会被转换为字符串输出。通常用来输出变量或字符串

let str = 'abc';
let obj = {name:'张三',sex:'男'}
let arr = [1,2,3,4,5]
console.log(str);
console.log(obj);
console.log(arr);

console.dir()

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

const body = document.getElementsByTagName('body')[0];
console.log(body); //打印的将是整个DOM树结构
console.dir(body); //打印的是body对象的所有属性

console.info()、 console.warn()、 console.error()

其用法与console.log()一致,差别在于输出的颜色与图标不相同

console.warn() 向控制台输出一条警告信息

console.error() 用于打印错误信息

let str = 'abc';
console.info('==info==',str);
console.warn('==warn==',str);
console.error('==error==',str);

console.table()

将数据以表格的形式展示,嵌套三层及以上的也会以表格的形式输出,但限于表格只能显示二维信息的特点,其会在嵌套三层的地方显示‘Object’字符串,'Array'。这个方法必须有一个参数data,且data必须是一个数组或对象。还有一个可选参数columns

let obj = {
    people1: {
        name: '张三',
        friend: {
            child:[{
              name: '李四',
              sex: '男'
            },{
              name: '美丽',
              sex: '女'
            }]
        },
        hobby:[{
            type:'dance',
            lable:'跳舞'
          },{
            type:'sing',
            lable:'唱歌'
          }],
        age: '18'
    }
}
console.table(obj);

console.assert()

如果断言为false,则将一个错误消息写入控制台。如果断言是 true,没有任何反应。

let arr = [1,2,3]
console.assert(arr.length > 2,"我是正确的,我执行了")
console.assert(arr.length > 3,"我是错误的,我执行了")