javaScript 关于console的理解
2015-08-07 15:20
711 查看
1、什么是console
Console 是用于显示 JS和 DOM 对象信息的单独窗口。并且向 JS 中注入1个 console 对象,使用该对象 可以输出信息到 Console 窗口中。JS中默认没有console对象, 这是某些浏览器提供的浏览器内置对象, 低版本IE就没有, 其他主流浏览器应该都有.
2、关于支持console的浏览器
很多人可能都知道Chrome 和 FireFox(FireBug)中都支持 Console。而其他浏览器都支持不好。比如 IE8 自带的开发工具虽然支持 Console,但功能比较单调,显示对象的时候都是显示 [Object,Object],而且不能点击查看对象里面的属性。IE6、IE7 虽然可以安装 Developer Toolbar,但也 不支持 console。Safari、Opera 都支持 Console,但使用上都没有 FireBug和 Chrome 的方便。 现在firebug推出了 firebuglite工具,可以让所有浏览器都支持Console功能,而且使用上和FireBug
几乎一样。详见 http://getfirebug.com/firebuglite。
3、console的使用方式
console.log(object[, object, ...])在控制台输出一条消息。如果有多个参数,输出时会用空格隔开这些参数。
第一个参数可以是一个包含格式化占位符输出的字符串,例如:
console.log("The %s jumped over %d tall buildings", animal, count);
上面的例子可以用下面的无格式化占位符输出的代码替换:
console.log( " The " , animal, " jumped over " , count, " tall buildings " );
并且,这两种方式是可以组合使用的。如果使用了格式化占位符,而提供的参数的个数多于占位符的个数,那么,多余的参数会以空格分隔的方式附加在字符串后面,就像:
console.log( " I am %s and I have: " , myName, thing1, thing2, thing3);
如果参数是一个Javascript对象,那么在控制台输出的就不是静态文字,而是一个可交互的超链接,点击超链接可以查看该对象的HTML, CSS, Script, DOM窗口,可用格式化字符串%o代替Javascript对象。
console.log( " Body tag is %o " , document.body);
格式化字符串列表:
格式化字符串 | 类型 |
---|---|
%s | 字符串 |
%d, %i | 整型(暂不支持数字型) |
%f | 浮点型 (暂不支持数字型) |
%o | 链接对象 |
在控制台输出一条消息,包含一个指向代码调用位置的超链接。假如是直接在控制台输入该命令,就不会出现超链接(和console.log()一样)。
console.info(object[, object, ...])
在控制台输出一条带有“信息”图标的消息和一个指向代码调用位置的超链接。
console.warn(object[, object, ...])
在控制台输出一条带有“警告”图标的消息和一个指向代码调用位置的超链接。
console.error(object[, object, ...])
在控制台输出一条带有“错误”图标的消息和一个指向代码调用位置的超链接。
console.assert(expression[, object, ...])
测试表达式expression是否为真。如果不是真,会在控制台写一条消息并抛出异常
console.dir(object)
以列表形式输出一个对象的所有属性,有点和你查看DOM窗口相类似。
console.dirxml(node)
输出一个HTML或者XML元素的XML源代码。和你在HTML窗口看到的相似。
console.trace()
Prints an interactive stack trace of JavaScript execution at the point where it is called.
The stack trace details the functions on the stack, as well as the values that were passed as arguments to each function. You can click each function to take you to its source in the Script tab, and click each argument
value to inspect it in the DOM or HTML tabs.
console.group(object[, object, ...])
输出一条消息,并打开一个嵌套块,块中的内容都会缩进。调用console.groupEnd()关闭块。该命令可以嵌套使用。
console.groupEnd()
关闭最近一个由console.group打开的块。
console.time(name)
创建一个名字为name的计时器,调用console.timeEnd(name)停止计时器并输出所耗时间(毫秒)。
console.timeEnd(name)
停止同名的计时器并输出所耗时间(毫秒)。
console.profile([title])
打开Javascript性能测试开关。可选参数title会在打印性能测试报告时在报告的开头输出。
console.profileEnd()
关闭Javascript性能测试开关并输出报告。
console.count([title])
Writes the number of times that the line of code where count was called was executed. The optional argument title will print a message in addition to the number of the count.
相关文章推荐
- [ExtJS5学习笔记]第第二十四次 Extjs5形式上gridpanel或表单数据后台传输remoteFilter设定
- 【JavaScript】——初识
- JavaScript阻止浏览器F5刷新
- jsp页面使用百度地图定位
- javascript知识点(1)
- JavaScript中setTimeout()和setInterval()的区别
- javascript trim 兼容性及解决办法
- javascript实现鼠标移到Image上方时显示文字效果的方法
- Js获取当前日期时间及其它操作
- 学习ExtJS Window常用方法
- JSON 和 XML 优缺点的比较
- JavaScript实现计算复杂计算公式(支持括号)
- JavaScript Dom编程艺术 总结
- 碰撞运动js
- JavaScript中callee,caller,argument的理解
- 本来想用jsonp来跨域请求的,但sb写接口的,不改返回值。。。只得在后台请求接口了。。。
- AJAX 跨域请求 - - JSONP获取JSON数据
- 解决JSP中文乱码问题
- JavaScript实现弹层兼容所有浏览器
- 解析Javascript事件冒泡机制