更新时间:2022-06-27 17:52:14
今天在看jq的代码时看到这样一个代码
console.warn( "nothing selected, can't validate, returning nothing" );
单独运行,居然在控制台打印出了nothing selected, can't validate, returning nothing,
豁然开朗,既然可以这样在控制台打印出消息,那以后就省得麻烦去用什么alert或是按F10去逐行调试了,肯定可以节省不少时间。
特意使用for(var i in console)查看了下各种浏览器控制台对console的支持,如下
time timeEnd trace profile profileEnd debug log info warn error assert dir dirxml group groupCollapsed groupEnd count table
可以看出,四种浏览器对log、info、warn、error四个基本方法都是支持的,除了IE,其他三种还支持个debug,所以使用debug要注意,当然咯,平时打印调试什么的,用log就行。还有个问题,IE6/7没有开发人员工具,也就没有控制台,而FF本身也是不带控制台的,需要加载Firebug插件并且启动它,才能console,否则就是js报错了。
所以为了使用起来无这种后顾之忧,还是建议自己封装一个打印类,如logger,在其中检测当然环境对console的支持,然后调用console的打印方法,不支持就用alert或其他方法咯,并且可以设置一个开关,标识是否需要打印以及打印级别,类似log4j,哈哈,这样使用起来就方便了。马上来写,写好了再分享下。