让我们谈谈汽车。
哦,等等,我们已经做到了-还记得我们认识的那段时间吗?我们谈到了汽车。实际上,您似乎是汽车方面的专家。您可以详细解释有关最新一级方程式赛车的所有对,错和令人兴奋的事情。您完全知道兰博基尼的所有型号,包括价格和供货情况。您甚至考虑过购买自己的Ferrari 599 GTB Fiorano,并为此省了下来(我敢打赌,牛排晚餐并没有太大帮助)。
当您用激动而激动的声音解释丰田的缺点时,您突然从椅子上跳下来,向空中尖叫,挥舞着拳头:“该死,我是与汽车相关的一切方面的杰出专家!我!我要当汽车修理工!”
所以你去了。您接受了一次采访,您对博斯人的印象与我一样深刻,因此您被录用了。第一位客户进来。他的离合器坏了。您检查了它,却不知道该怎么办。事实上,您绝对不知道如何遵循老板人给您的建议。你被解雇了。
但是怎么可能呢?你知道的一切关于汽车!除了...关于汽车的一切。您可能非常了解自己梦想中的汽车具有V12发动机,但是您实际上并不知道这意味着什么。
因此,您实际上不是汽车修理工-您是汽车狂热者。并且,在您学习汽车的工作原理之前,您将始终是一个狂热者。
现在让我问你。$.fn.text
工作如何?那又如何$.fn
呢?他们到底是什么意思?如何$(something)
返回一个包含事物的巨大东西,那东西到底是什么?从理论上讲,您是否可以至少复制一点?没有jQuery,您能应付吗?
说“原生JavaScript很难”只是……错误。首先,因为JavaScript作为一种语言与DOM无关,而DOM则主要是jQuery的抽象。其次,因为一旦您对DOM有所了解,就可以浏览最常见的跨浏览器错误。但是,这只是一个小秘密-起初一切都很难。五年级的时候,长师是个bit子。
作为此答案的第二个类比:jQuery就像Array.prototype.forEach
to 一样,是JavaScript-DOM(不是JavaScript语言,只是DOM)for
。它适用于99%的情况。而且效果很好。但是对于那未涵盖的1%,您仅是为了实际就需要知道如何使用for
循环。整个答案是基于问题的“纯”方面,甚至不是基于技术方面(例如,库的大小,以及迈克尔·多兰特的回答中所解释的其他几件事)。因为我喜欢JavaScript,而当人们似乎只是随随便便把它扔到一边,说“ pah,那些愚蠢的javascript人”并挥舞着花哨的白手套时,它就沦为道德。
如果您可以接受自己始终都是JavaScript爱好者的事实,那么我该阻止谁?但是,如果您想成为一名JavaScript程序员,则首先必须具备至少在使用jQuery(或任何其他库)和不使用库之间进行选择的知识。了解DOM。了解如何使用它。编写自己的小型库或一些辅助函数。并且一旦您对DOM有所了解,并选择使用jQuery-godspeed。懒惰是为那些努力工作的人而设的。