console.log()与alert()对比使用及console.log()使用注意事项

来源:互联网 发布:淘宝交易货款延期延长 编辑:程序博客网 时间:2024/06/08 01:25
今天开发的时候发现一个问题,很是奇怪,就是页面上的有些操作在谷歌、火狐、IE8、IE10、IE11下都没有问题,但是在IE9下就是不可用,刚开始以为是浏览器兼容性的问题,后来查找资料发现是页面加载console.log()的原因,因为IE浏览器下默认是不支持console.log,反而会因为这句代码而报错,所有ie下注释掉比较好

在前端页面开发中,经常使用到console.log()来查看页面获取的数据,类似于alert(),但是这两者又是有区别的
区别在于:
1.alert()对代码的运行有阻塞的作用,当运行的时候要关闭弹出框才能进行后续的操作,否则代码将不能进行后续操作。
而console.log()它是在控制台上进行打印,对代码没有阻塞的作用。
2.console.log()可以打印任何类型的数据,而alert()只能打印输出String,因为alert输出的对象会自动调用toString()方法。如果想 console.log() 输出的与alert相同,需要调用 toString() ;如:console.log(obj. toString() );而alert()即使不写toString()方法,alert()也会默认调用的。
3.在输出的是对象的时候,alert()输出的是[object object],这个时候使用console.log()在控制台就可以看到具体的对象对应的数据。
4.console.log 原先是 Firefox 的“专利”,严格说是安装了 Firebugs 之后的 Firefox 所独有的调试“绝招”。
这一招,IE8 学会了,不过用起来比 Firebugs 麻烦,只有在开启调试窗口(F12)的时候,console.log 才能出结果,不然就报错。

注:IE浏览器下默认是不支持console.log,反而会因为这句代码报错,所有ie下注释掉比较好

原创粉丝点击