用console.table()调试javascript
发布在Yun.kou的专栏2013年11月18日view:2771
在文章任何区域双击击即可给文章添加【评注】!浮到评注点上可以查看详情。

昨天我了解到Chrome调试工具一个小巧的调试方法,在WDCC期间, Marcus Ross(@zahlenhelfer) 介绍了,chrome调试工具各种调试方法,这个只是其中一种,现在我来给大家秀下。

用CONSOLE.LOG()展示数组

想象下你构造了如下数组

  var languages = [
{ name: "JavaScript", fileExtension: ".js" },
{ name: "TypeScript", fileExtension: ".ts" },
{ name: "CoffeeScript", fileExtension: ".coffee" }
];
console.log(languages);

console.log() 会这样展示数组

这样的展示形式对于开发很有用,但是我发现这样还要手动去点每个Object有些笨重。这时候我觉得console.table()有点意思。

用CONSOLE.TABLE()展示数组

现在我们用console.table()试试:

非常小巧有木有?

当然,console.table()更适合,扁平 列成表格式的数据,展现的更完美,否组你在 如果每个数组元素都是不同结构,你的表格很多格子都是 undefined。

用CONSOLE.TABLE() 展示object

console.table()另一个特性就是展示 object。

var languages = {
csharp: { name: "C#", paradigm: "object-oriented" },
fsharp: { name: "F#", paradigm: "functional" }
};

console.table(languages);

妥妥的。

CONSOLE.TABLE() 的过滤功能

如果你想限制console.table()显示某一列, 你可以在在参数中传入关键字列表 如下:

// Multiple property keys
console.table(languages, ["name", "paradigm"]);

如果你想访问一个属性的话,一个参数就够了,

// A single property key
console.table(languages, "name");

我曾经以为我已经了解了 Chrome 开发者工具绝大部分的功能,但是现在显然我错了, 骚年没事去看看Chrome DevTools文档吧!

翻译自Advanced JavaScript Debugging with console.table()

评论
发表评论
4年前

@芋头 敢。。。

4年前

@张小俊128 敢不敢不要用标题做回复。。

4年前

@张小俊128 看了,大开眼界。 但是暂时没发现那些有什么实际应用场景。chrome development tool 努力努力, 和你比产量差远了。

4年前

console.log里面添加颜色和图片的功能也很有意思,楼主可以写一个chrome development tool的专栏

WRITTEN BY
Yun.kou
web设计师 前端重构 致力于设计与前端一体设计
TA的新浪微博
PUBLISHED IN
Yun.kou的专栏

人丑技术烂

我的收藏