Debugging JavaScript:throw与console
作者:嗷嗷 来源:样式之美 发布时间:2008-08-29 17:03:00
我想没多少人敢保证写JavaScript能不用调试,那选择用什么方式调试会比较好呢?
告别了我最爱的
alert("MM")
告别了我最爱的
document.title="MM"
告别了我最爱的
window.status="MM"
大家开始用各种新的方式来看调试信息。。。比如最近sitepoint就发了一篇Debugging JavaScript: Throw Away Your Alerts!,大家先去看,看完再回来接着看。
var err = new Error();
err.name = 'My API Input Error';
err.message = 'Input must be a number';
throw(err);
throw
虽然不错,但是我们调试时可能不只能抛错,还可能抛很多奇怪的信息,比如把执行时间、返回结果打出来看,当然,你也可以写不同的err.name
来区分。但是,有事没事看到报错也是很不爽的一件事。
写JavaScript的同学应该都有装Firebug,如果没装赶快装去,装完了再回来看,要是连Firefox都没有就玩Firebug Lite。
Firebug提供有了个console,你可以用:console.log(object[, object, ...])
和若干console.xxx
来玩,这样就可以把错误跟警告区分开了,挖哈哈。
同时,console并不是Firebug独有的,你也可以用console.log('嗷嗷又出来忽悠人了!');
把信息打到Safari的错误控制台,还可以这样玩:
console.warn('这个图标很黄');
console.error('×的图标不好看');
Opera也有个错误控制台,可惜不能用console.log
来显示东东,不过也有打印的接口: opera.postError
,但它打出的的图标却不是错误的图标,它的真名应该叫postWarn,throw
打出来的图标才是错误的图标,它才是真正的postError,算了,凑和着用吧。如果在Opera下做开发推荐使用Opera Dragonfly。
还有IE呢?嗯,介于我的系统没有IE,飘过。挖哈哈。
其实大家可以自己写个Console,除了可以把东东打印到浏览器的错误控制台上,还可以把信息打印到服务器上,在自己调试环境下没问题不代表在任何情况下都会没问题。


猜你喜欢
- 1、首先在系统盘中查找scrrun.dll,如果存在这个文件,请跳到第三步,如果没有,请执行第二步。 2、在安装文件目录i386中找到scr
- 一个已知管用的方法是,使用session_set_save_handler,接管所有的session管理工作,一般是把session信息存储
- 语法格式:row_number() over(partition by 分组列 order by 排序列 desc)row_num
- Series对象和DataFrame的列数据提供了cat、dt、str三种属性接口(accessors),分别对应分类数据、日期时间数据和字
- asp使用fso读取驱动器信息:<%vv=drive()response.write vv funct
- 如何编写CSS代码才能更有效率?这是许多网页制作者与开发者都关心的问题。大概没有什么魔法,可以保证一下就把你的样式表缩小到百分之多少,但合理
- 打开CMD命令 执行:sqlcmd/? 这是sqlcmd命令的一些帮助信息 通过上面可以知道怎么连数据库了 执行:sqlcmd -S 服务器
- 项目环境:python3.6一、项目结构二、数据集准备数据集准备分为两步:获取图片.提取人脸.1、获取图片首先可以利用爬虫,从百度图片上批量
- 一个重要的应用就是如何在遗忘root用户密码的时候修改密码,使用的方法是启动MySQL服务器时忽略加载授权表。由MySQL使用用户名和口令的
- 一、问题描述 筛选出多个txt文件中需要的数据二、数据准备这是我自己建立的要处理的文件,里面是随意写的一些数字和字母三、程序编写import
- 废话不多了,直接贴代码了一查询数值型数据:SELECT * FROM tb_name WHERE sum > 100; 查询
- 报错信息粉丝群里面一个小伙伴想用pip安装库的时候出现的提示报错(当时他心里瞬间凉了一大截,跑来找我求助,然后顺利帮助他解决了,顺便记录一下
- 在我的上一篇博客中讲述了水平投影法取出文本行图像的实现,在这里将用垂直投影法对文本行的每个字符进行分割。下图是用水平投影法切割的文本行:文本
- var getWindow = function(obj) { var&nbs
- pycharm全局修改pycharm 全局改函数方法1ctrl shift r全局替换方法2点击函数,右键 Refactor Ch
- 需求分析根据原始数据,计算出累计和、回撤、连续正确、连续错误、连续正确值与连续错误值6项数据,其中原始数据大于等于0认定为正确,原始数据小于
- 在学习与运用ASP中,response对象涉及到的方面也比较多,想全部都掌握也并非一两天的事,我也是最近才发现response对象中居然有这
- 所以特意写了这个配置文档,相信按照以下步骤你一定会成功的.错误的地方也希望各位指正. 本例是在wiondws XP下 php5.2.1(zi
- 有些时候我们不得已要利用values来反向查询key,有没有简单的方法呢?下面我给大家列举一些方法,方便大家使用python3>>
- codecs在读取文件时,发生错误:UnicodeDecodeError: 'utf-8' codec can't