Javascript 6 中的 console.clear JavaScript 控制台方法,类似 Taylor Swift 民谣歌词
这篇博客文章是为Twilio撰写的,最初发表在 Twilio 博客上。
如果你从事 Web 开发,你可能console.log
至少用过一次(甚至上千次……谁在乎呢?),因为这是最棒的调试方法!但你知道还有其他控制台方法吗?泰勒·斯威夫特的最新专辑《folklore》充满了令人沉思的隐喻、典故和象征意义,这篇文章将把其中一些歌词比作 6 种鲜为人知的 JavaScriptconsole
方法。
控制台到底是什么?
这console
是一个全局对象,允许开发者访问调试控制台。它拥有丰富的方法,可以更轻松地记录语句、变量、函数、错误等等——我的天哪!
6 个像民俗歌词一样的控制台方法
1. console.log = "但如果是你,那将会很有趣"
console.log
是最常用的方法。它用于通用日志记录,并在 Web 控制台中显示传递给它的消息。你知道你可以用 CSS 来装饰它吗?
console.log("%cWARNING: you will be obsessed with folklore", "font: 2em sans-serif; color: yellow; background-color: red;");
Log
简单、可靠,可以完成工作,但是它被过度使用,吸引了所有类似console
方法的注意力。Log
如果它是你所需要的唯一控制台方法,那将会很有趣——但是正如这篇文章所示,使用其他方法你会获得更多乐趣console
!
2. console.table = "我是一面镜子 // 今晚我会向你展示你自己的每个版本"
该table
方法接受一个对象或数组,并将输入记录为表格,使其看起来更简洁:就像一个更美观的版本log
。像镜球一样,可以通过接受可选参数来选择要显示的列子集,table
从而显示不同版本的输入。columns
数组中的每个元素(如果数据是对象,则每个可枚举属性)都将在表中占一行。下面的 JavaScript 代码包含一个对象,您可以看到最初使用 log 的输出。
function Album(name, year, numSongs) {
this.name = name;
this.year = year;
this.numSongs = numSongs;
}
const fearless = new Album("Fearless", 2008, 13);
const speakNow = new Album("Speak Now", 2010, 19);
const folklore = new Album("folklore", 2020, 16);
console.log([fearless, speakNow, folklore]);
console.table([fearless, speakNow, folklore]);
接受columns
像这样的参数console.table([fearless, speakNow, folklore], ["name"]);
将显示: 您也可以传递它(而不是)或--像mirrorball一样,表可以向您显示其输入的每个版本!name
year
numSongs
3. console.assert =“如果你不流血,你就永远不会成长”
console.assert(expression, message)
仅当表达式为假时才打印。泰勒·斯威夫特的歌词“如果你从不流血,你就永远不会成长”出自她的歌曲《1》——如果你从不流血,或者从不失败,或者有时犯错,你就永远不会成长。assert
这表明,即使表达式为假,你也能成长为一名开发者,因为你可以修复控制台友好地帮助你修复的错误,方法是将断言显示为漂亮的红色。
const numFolkloreSongs = 16;
const num1989Songs = 13;
console.assert(numFolkloreSongs > num1989Songs, 'folklore has more songs than 1989'); //won't run
console.assert(num1989Songs + 3 > numFolkloreSongs, 'the number of songs on 1989 + 3 is not greater than the number of folklore songs');
4. console.time/console.timeEnd = "时间,神秘的时间/将我切开,然后治愈我。"
console.time()
创建一个计时器,用于查看某个操作的耗时。该计时器支持可选参数(名称或标签),用于区分网页上最多 10,000 个计时器。
console.timeEnd()
停止计时器,并在控制台中显示结果。
时间是残酷的——它可以伤害你,但也可以治愈你,让你感觉更好。
console.time('sms timer');
let x = 0;
while (x < 3) {
console.log("They told me all of my cages were mental/So I got wasted like all my potential");
x+=1;
}
console.timeEnd('sms timer');
如果没有传递标签console.time()
,它将记录默认值而不是短信计时器。
5. console.clear:“如果我对你来说已经死了,那你为什么还会参加守灵仪式?”
console.clear
简短、简洁、实用。它会清除控制台,并且在某些环境下,可能会打印类似“控制台已清除”的消息。
歌词“如果我对你来说已经死了,你为什么还要参加守灵仪式?”听起来很忧郁,但却不失为一种表达:当你想结束一段对话时,这首歌再合适不过了,就像clear
,你可以重新开始,重新开始。
6. console.group/console.groupEnd="想想看,一直以来,总有一根无形的线将你和我联系在一起,这难道不是很美好吗?"
console.group
表示内联消息组的开始和console.groupEnd
结束。如果该组包含日志,则它们将作为一个组打印,这样格式更清晰,您也更容易分辨出该组包含的内容。
就好像有一条看不见的绳子(或console
命令)将组中的项目绑定在一起。
console.group("folklore");
console.log("the 1");
console.log("cardigan");
console.log("the last great american dynasty");
console.log("invisible string");
console.log("my tears ricochet");
console.groupEnd();
console.log("outside");
控制台的下一步是什么?
这里没有列出许多其他控制台方法(部分原因是它们与泰勒·斯威夫特的歌词关联不大)。有关控制台方法的更多信息,请查看 Mozilla 开发者网络的 Web 技术文档。请在线上或在评论区告诉我你最喜欢或最不喜欢的民谣歌曲!
- 推特:@lizziepika
- GitHub:elizabethsiegle
- 电子邮件: lsiegle@twilio.com