在学习过程中体会到的可以实践的经验。
1,调错,调错的前提是你的代码出现了错误,怎么又出错呢?啥话不说,敲代码!!!也就只有敲出代码了才有可能出现错误,我们在调错的过程中才是能力的提高,这里只想告诉自己,勇于敲出代码,勇于接受错误,勇于调错,不能看着问题发呆和抱怨。
2,思考固然很重要,理清了思路,解决问题就很快了。千万记住一点,别只是停留在理论上的思考,有些东西是我们敲出代码,让代码运行一次,看看能不能产生我们想要的结果,而不是理论上的或者想当然的觉得好像不行,其实,大都时候行不行也只有我们试了才知道啊。就像洛必达法则一样,能不能用洛必达法则,用了在说,发现计算不出结果,那么可以肯定是不适用洛必达法则的。
3,有什么不懂的,查查帮助文档,看看相关知识,因为帮助文档已经解释得很清楚了。
4,报错。首先应该在console看报错信息,是nullPointerException,是indexOutOfBoundsException还是numberFormatException等,顺着提示错误信息一步一步地寻找,刚开始可能很慢,导致慢的原因有很多,比如对知识点不熟悉,没有深刻体会到知识本质,然后根据提示的错误信息采取应该采取的措施。这里强调看懂console报错信息的重要性。
5,打一个“debug”,走一走,看一看哪儿出现问题,采用相应措施解决。比如用控制台输出一下,看是否取到想要的值。在js中,用alert()弹一下,看取的值对不对,看是否进了方法或者进了判断?如果存在浏览兼容问题,比如在js中有些浏览器不进if判断,然后你可以让其走else。
6,用google浏览器,查看框架源代码,看看利用el表达式是否取到值了?有些循环中的属性是否已经完全一样?解决方案呢?后台又如何取值呢?存String,存Array,存Object,存List等各种手段,力求得到自己想要结果。
7,你写了很多代码,在执行过程中console报错,但是你也发现不了。这个时候可以采取减少代码片段调错手段,比如一个循环嵌套了6层,你仔细检查排错也没有发现,这个时候你可以一层一层抽离代码,抽离出了代码仍然报错,那么抽离的代码就是对的,错误仍存在于当前代码中;继续抽离,假如这个程序不报错了,那么抽离的代码片段存在错误,你就可以仔细检查刚才抽离的这一小部分代码,因为代码错误就其中。