Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么每个javascript问题的答案最终都是;jQuery";_Javascript_Jquery - Fatal编程技术网

为什么每个javascript问题的答案最终都是;jQuery";

为什么每个javascript问题的答案最终都是;jQuery";,javascript,jquery,Javascript,Jquery,在过去的几周里,我一直在关注javascript问题,我发现了一个常见的重复主题 这里几乎所有涉及JavaScript的问题都可以通过以下方式得到回答: “jQuery可以做到这一点” “这有一个插件” “jQuery可以为您铺床。” 即使是引用其他库的问题,答案也是“改用jQuery” jQuery整体上正在取代JavaScript吗? 这是一个严肃的问题。我们真的在展望未来吗。显然,这个社区对jQuery有强烈的偏见(这是因为有很多.NET开发人员吗?),但整个web开发社区是否也有这种偏见

在过去的几周里,我一直在关注javascript问题,我发现了一个常见的重复主题

这里几乎所有涉及JavaScript的问题都可以通过以下方式得到回答:

  • “jQuery可以做到这一点”
  • “这有一个插件”
  • “jQuery可以为您铺床。”
  • 即使是引用其他库的问题,答案也是“改用jQuery”

    jQuery整体上正在取代JavaScript吗?

    这是一个严肃的问题。我们真的在展望未来吗。显然,这个社区对jQuery有强烈的偏见(这是因为有很多.NET开发人员吗?),但整个web开发社区是否也有这种偏见?

    不,jQuery并没有取代JavaScript,因为它是JavaScript。但它对您帮助很大,特别是在选择元素和对元素应用函数方面

    使用jQuery最重要的理由可能是:您不必考虑跨浏览器兼容性。
    说真的,浏览器中不同的JavaScript实现让我抓狂

    但我也不认为jQuery应该用于所有事情。这取决于JavaScript的使用位置(例如,哪些浏览器)以及您实际执行的操作

    正如我已经回答的其他问题,只有理解JavaScript,才能掌握jQuery。如果您不了解jQuery的工作原理,那么编写糟糕的jQuery代码是非常容易的

    更新:

    事实上,在现代浏览器中,您已经可以使用jQuery完成通常使用的任务,比如使用选择器或
    each()
    ,在JavaScript中使用
    document.queryselectoral()
    和数组方法
    forEach()


    但这就是问题所在:在现代浏览器中。jQuery确保您可以使用相同的API,而不必关心浏览器版本。

    我不能代表所有人说话,但jQuery只是让javascript任务变得更简单。更不用说,它们是跨多个浏览器测试的,因此不太关心跨兼容问题

    在jquery的一行中编写的内容可能需要编写自己的javascript 10或更多。使用该库的另一个好处是,它已经过测试,您不必担心bug


    这只是我的观点。

    jQuery已经成为一种事实标准,就像C或Java在桌面编程世界中的应用一样——每个人都知道它,或者应该知道它提供了公共语言。通常,每个人都从jQuery开始,然后从自己的经验中学习Javascript,然后可以到其他地方看看

    Javascript很难,jQuery使其易于入门。一旦人们学习了jQuery,他们将对Javascript非常熟悉,可以学习其他框架或创建自己的微型框架。但遗憾的是,你可以学习其他东西,但一般来说,学习曲线更大


    其他一些真正流行的工具是MooTools和SproutCore,它们都有巨大的支持。jQuery有点像javascript的训练轮,MooTools一直都是面向对象的,而SproutCore则用于云中的桌面应用。就像任何编程语言或框架一样,您学习最容易入门的语言或框架,然后随着学习的深入,您会意识到不同的语言和框架对不同的事情有更好的帮助,或者至少您应该意识到;-)呵呵。

    我对jQuery有点偏见。这是我唯一被忽略的标签:)

    在我看来,当另一个人正在使用“普通”JavaScript时,人们在其他问题中发帖说“我可以使用jQueries吗?”是不合适的

    <>我相信每个人在进入jQuery前都应该学习“纯”JavaScript + DOM操作,就像你不应该在学习C++时直接跳进DirectX;没有JavaScript专有技术,您无法使用jQuery

    不过,最后,你应该使用你觉得更舒服的东西


    但老实说,我相信如果你也精通JavaScript,你会有更多的机会,假设jQuery有一天会消亡。。。您对JavaScript本身的体验仍然存在。

    在我看来,JavaScript丑陋、容易出错,而且令人痛苦。我喜欢jQuery、prototype.js等方法的灵活性。然而,这些库的出现证明了我的观点。并非所有这些都是JavaScript的错。其中一些是由于网络浏览器

    为了更好地回答实际问题:

    jQuery只是让事情变得更简单,就像任何好的库/框架应该做的那样。这就是为什么会有这么多人建议它。在jQuery中比在普通JavaScript中更容易实现。试图解释所有细节以使普通JavaScript在各种情况下工作可能是一件非常痛苦的事情


    尽管如此,我同意。如果有人只是在寻找一个JavaScript解决方案,那就是他们应该得到的。然而,他们应该意识到这可能是一个困难的过程,不是每个人都有时间/兴趣去惹那么多麻烦

    我不能为对某个特定框架的偏见辩护,但在完成任务和正确完成任务方面,通常使用框架胜过普通的javascript。大卫·沃尔什在这里说得最好:


    如果您只是使用JavaScript来操作DOM和AJAX,为什么不使用框架来完成繁重的工作呢


    JavaScript确实超越了网页和DOM。看看有没有严肃的惊人之处。看一小段时间,读一读这篇文章(虽然这会让人印象更深刻)。

    这与问为什么会偏爱使用任何框架(如MVC.net、CakePHP等)是一样的。速度、灵活性、重用性等等

    然而,尽管框架做了很多很酷的事情,但最终它并不能取代了解和理解底层语言的需要