今天在Google Reader上看到一篇 JavaScript的陷阱 @ 随网之舞,颇为感慨,这些个错误我也是犯之再犯...以下也说说我的体会:
最常犯的错误
因为编辑器的帮助,养成了机械式的关闭一些匹配符号的习惯,所以也不会存在“不匹配的引号、圆括号或花括号”的问题,所以“多余的逗号”成了我最常犯的错误。由于写CSS的习惯,总会在每条css属性定义后加;,这样的习惯也使我在定义一些javascript对象的时候,会在每个属性后面加一个,。写的正欢,总会变成这样:
.highlight {
text-align:center;
font-size:1.1em;
color:lightblue;//CSS这样写没错}
...
var highlight = {
"text-align":"center",
"font-size":"1.1em",
"color":"lightblue",//javascript这样写,IE8以前的IE版本会报错}如何防止这个问题,自己也很郁闷,也因此这一条在我的”错误排除榜“上高居榜首。
最郁闷的错误
最让人郁闷的是一些无意的错误,不会抛出错误,让人很难排查。文中提到的条件语句的第2个陷阱:
把第二个参数的值赋给第一个参数。因为它是一个逻辑问题,它将一直返回true且不会报错。
一个等号和两个等号,在庞大的代码里面,通常会很不起眼,很容易让人有错觉。自己啃这个骨(苦)头已经不是一次两次了,因此这个进入了”错误排除榜“的三甲。
最无知的错误
之前由于基础不扎实的缘故,经常会犯一些无知的错误,而浪费大把的时间来调试。比如文中提到的parseInt,一直不知道它有第二个参数。当然这闹了很多笑话,也让我长了脑子...
做事的时候一定要以一个平和的心态,不要让自己太High,当然这也是个人见解 :)
