在编程时,遇到问题是难免的。
问题,是一直以来阻挡我们前进的绊脚石,同时又是我们前进路上的垫脚石,但问题最后变成什么,取决于我们如何解决它。当你能快速解决问题时,那问题本身能带给你的负面影响会降到最低。所以如何解决、快速的解决就是我们需要学习的地方。
当我们遇到问题时,我们首先要确定问题发生在哪儿,发生在那个层面。我称之为定位问题
对于层面,我认为可以划分为?个
1.基础层面:出现了你必须用,但是你不了解的知识/用法,此时,你应该学会如何准确的在搜索引擎上查找。
2.应用层面:一个知识/用法,你已经学会如何使用,但是在使用时出现了问题,此时,你可以回顾一下,看看自己是否有学过但忘记的地方。
3.深度层面:当你已经熟练掌握某些知识/用法并应用时,出现了意料之外的错误,这时可以去对这些知识进行深层理解,看看这些方法中是否有更深层的东西你没了解。
举个例子,当你想获得网页滚动位置的属性时,需要用到scrollTop这个属性,如果直接对document.body使用,你会发现获取值一直会是0。错误的原因在于(我认为)是历史遗留问题,html的前身是xml,所以文档的头部才会有 <DOCUMENT html> 这个并没有什么实际意义的标签(仔细想想,.html的后缀难道不足以说明这个文件是html文件了吗)。当你去掉这个标签后,你就会发现,document.body可以获取到准确的值了。除此之外,你还可以直接通过document.documentElement来直接获取(如果你没有去掉<DOCUMENT html>的话)
网友评论