首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

有没有什么好的理由不使用jQuery而不是普通的旧JavaScript?

在某些情况下,使用jQuery而不是普通的旧JavaScript可能是一个好主意。以下是一些可能的原因:

  1. 简化代码:jQuery提供了一种更简洁的方式来编写JavaScript代码,使其更易于阅读和维护。它还提供了许多内置的功能,如动画、事件处理和AJAX请求,这可以减少开发人员编写的代码量。
  2. 跨浏览器兼容性:jQuery具有很好的跨浏览器兼容性,这意味着它可以在不同的浏览器中以相同的方式工作,而无需进行任何修改。这可以节省开发时间,并降低出现错误的风险。
  3. 链式操作:jQuery支持链式操作,这意味着可以将多个操作组合在一起,从而减少代码的复杂性和冗余。
  4. 易于学习:对于那些已经熟悉jQuery语法的开发人员来说,学习曲线很低。这使得在团队中进行协作变得更加容易。

然而,也有一些缺点:

  1. 文件大小:jQuery库相对较大,这可能会影响页面加载速度。为了提高性能,可以考虑使用更小的库或只引入所需的特定功能。
  2. 依赖性:使用jQuery意味着需要依赖于该库。在某些情况下,开发人员可能希望避免这种依赖,并直接使用原生JavaScript。
  3. 不一定总是最佳实践:虽然jQuery提供了许多便捷的功能,但在某些情况下,它可能不是最佳实践。在一些现代框架中,如React和Vue,直接使用原生JavaScript可能更为合适。

总之,在决定是否使用jQuery时,需要权衡其优缺点。如果您需要跨浏览器兼容性、简化代码和链式操作,那么使用jQuery可能是一个好主意。然而,如果您关注性能和最佳实践,或者希望减少对外部库的依赖,那么直接使用普通的旧JavaScript可能是更好的选择。

相关搜索:是否有任何普通的理由使用open()而不是fopen()?有没有理由做boolean cast !! 而不是JavaScript中的Boolean()?如何隐藏子元素,而不是使用普通的Javascript删除?为什么不总是在Java中使用ArrayLists而不是普通的'数组?为什么使用<T::Lookup作为StaticLookup>::Source而不是普通的T::AccountId?使用ForkJoin中的写操作而不是普通线程池的队列有什么好处?有没有可能用普通的JavaScript而不是react.js来渲染网站的一部分?有没有办法只检查一个普通的javascript对象,而不是其他任何特殊类型的对象(如Date)?有没有可能使用jquery或普通的javascript来获取标签的'<‘和'>’内的字符串?为什么javascript会在我的索尼爱立信C510浏览器上运行,而不是javascript + jquery?防止使用纯javascript而不是jQuery在enter上添加可内容编辑的div有没有办法重新填充Html Select的选项而不触发Change事件(使用jQuery)?JavaScript replaceAll使用变量而不是字符串进行不区分大小写的搜索使用'[]'表示法访问javascript对象成员而不是点符号的原因是什么?使用普通的JavaScript,有没有可能添加一个DOM元素并使用CSS过渡淡入,而不使用setTimeout或CSS动画?有没有可能在Flutter上使用JavaScript而不是Dart来制作跨平台的移动应用?将Delphi对象树序列化为XML的好方法是什么 - 使用RTTI而不是自定义代码?有没有办法显式地设置jquery-ui范围滑块中的选项,而不是使用"min“、"max”和"step"?有没有什么简单的方法可以让master中的每个功能都提交一次,而不是使用squash进行rebase
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

零基础小明要如何成为前端工程师?

不是 Sublime,只是小明记事本比较高级 「这是什么碗糕!」整个画面上,小明只看得懂中文,其他根本不知道在写些什么。...虽然能这样用一定很棒,可是 JavaScript 又不支持,怎麽办呢? 咦?有没有一种似曾相识感觉?...概念跟 CSS preprocesseor 有点像,但最大差异在于 SCSS 那些语法不是「下一代 CSS」,所以浏览器以后也不会支持那些语法;新一代 JavaScript 只是「现在」还没被浏览器支持...工具出现是为了把问题变得简单,不是变得更複杂。当你发现引入了工具却让你变得更没效率,就应该好好思考你是不是根本不需要这个工具,不是去怪工具不好用。...当你知道背后脉络时,就知道工具其实是在帮助你,不是在阻碍你。就会知道这些工具出现有其必要性,就能够更有个理由去把这些工具给学好。

39330

写出好程序11个技巧

有很多理由都能说明为什么我们应该写出清晰、可读性程序。最重要一点,程序你只写一次,但以后会无数次阅读。当你第二天回头来看你代码时,你就要开始阅读它了。...你应该学会用Ruby方式解决问题,不是沿用Java解决问题思想。   当你需要重复5遍”Hello world!...这些精心设计思想作用显著,它能使你设计易于理解,因为你可以简单说”我使用是‘观察器 模式’“,不用从头到尾解释一遍。那么,有问题吗?...当你学到了新程序库或新语言,你可能会迫不及待丢掉代码,用你新学到东西重新写一遍。有很多理由都能说明你不该这么做。   往现有的应用里增加新类库或框架同属于这种情况。...就说你写了一个Javascriptweb应用,期间,你发现了jQuery。现在你突然急切想丢到你Javascript程序,重新用jQuery写,尽管你还从来没用过它。

78050
  • 2018年8月中级前端开发推荐书籍

    《CSS世界》 推荐理由:CSS和javascript一样,都是很容易上手,却很难精通。...《javascript设计模式(第二版)》 推荐理由:设计模式在javascript应用。 7. 《javascript框架设计(第二版)》 推荐理由:司徒正美的书,他博客也是非常知名。...这本书会让你了解如何去设计一个框架,徒手打造简易版jQuery,angularjs,vue.js,react.js并不是高不可攀,当你能亲手造出一个简单框架时,你对它理解必将到达另一个层次。...《告别失控 软件开发团队管理必读》 推荐理由:计算机类图书销售榜排名第5技术管理类书籍,不想当将军的士兵不是士兵,其他不多说。 11....《视界·×××:写给UI设计师设计书》 推荐理由:没有审美的前端不是架构师。读设计类不是让你抢设计师饭碗(实际上你也抢不了),而是下次再有人说你界面不好看时,你可以用“不懂审美”噎死他。

    80430

    前端组件整理

    提高精度数字操作 浏览器增强类 让一些浏览器变牛逼库 Selectivizr 让IE 6-8支持一些css3选择器 ieBetter 让ie6-8有高级浏览器特性 ExplorerCanvas...待办事宜日历 full calendar 支持脱放方式来改变待办事宜时间 时间选取组件 jQuery ui datepicker 经典,不是很好看 pickadate 轻量级,手机友好,漂亮...但貌似只能在弹出层中显示,没有下拉这种方式显示。 zebra-datepicker 可配置性很强。但貌似只能在弹出在右上方。。。...wowslider 幻灯切换时各种很炫效果。收费。 cycle2 普通幻灯,竟然不支持垂直滚动。。。 jcarousel 普通幻灯,兼容IE6 reveal 3d滚动。...transit 对元素进行css变换 视觉差插件 scrollorama 比较简单 superscrollorama 能做效果更多,但要用第三方Tween库,使用起来比较复杂。

    12.8K40

    6个帮助你学习JavaScript快速且久经考验技巧

    我依然想鼓励你们去尝试不同方式。我理解你们喜欢书籍胜过视频。或者你们喜欢自己尝试,不是阅读它们。最后一个最适合我,书籍排第二。使用各种学习方式学习JavaScript原因很简单。...通过看同事学习通常是新员工如何获得他们第一次体验。你有没有为别人工作过?是的,暑期工也算。那么,你雇主很可能会带你完成工作。如果不是雇主,而是另一个雇员。...当你学习一些东西时候,你必须掌握这个知识并且练习它。光获取知识运用就是在浪费时间。此外,你更容易忘记你运用东西。为了避免这种情况,你必须练习(看第五条提示)。...把这个看成是“什么”。缺少是“为什么”。你需要明白为什么她用这种方式来实现不是其他方法。当你坐在别人旁边时候,你可以询问任何事。我认为这是学习JavaScript和任何事情方法——提出问题。...jQuery如果不是世界上使用最广泛JavaScript库,那也是其中之一。有趣是,只有很少一部分使用它的人读过它源码。我必须承认我也从来没有看过完整jQuery源代码。

    55310

    6个帮助你学习JavaScript快速且久经考验技巧

    我依然想鼓励你们去尝试不同方式。我理解你们喜欢书籍胜过视频。或者你们喜欢自己尝试,不是阅读它们。最后一个最适合我,书籍排第二。使用各种学习方式学习JavaScript原因很简单。...通过看同事学习通常是新员工如何获得他们第一次体验。你有没有为别人工作过?是的,暑期工也算。那么,你雇主很可能会带你完成工作。如果不是雇主,而是另一个雇员。...当你学习一些东西时候,你必须掌握这个知识并且练习它。光获取知识运用就是在浪费时间。此外,你更容易忘记你运用东西。为了避免这种情况,你必须练习(看第五条提示)。...把这个看成是“什么”。缺少是“为什么”。你需要明白为什么她用这种方式来实现不是其他方法。当你坐在别人旁边时候,你可以询问任何事。我认为这是学习JavaScript和任何事情方法——提出问题。...jQuery如果不是世界上使用最广泛JavaScript库,那也是其中之一。有趣是,只有很少一部分使用它的人读过它源码。我必须承认我也从来没有看过完整jQuery源代码。

    41720

    谈谈哗众取宠BicaVM

    什么“自动化沙盒”、“具有支持JNI接口,DOM模型等特点”,说起来果然天花乱坠,似乎有什么高明玄妙。 其实归根结底,BicaVM无非就由两种东西所构成,一种,叫炒作,另一种,就叫做扯淡。...众所周知,本来JS就是解释性语言,BicaVM是什么东西,是一个能够让JS运行字节码(直接读取class)WEB版JVM。...图1: 不知道各位都看见了什么,我所见者,就仅仅是一个蠢货为了让BicaVM中基本数据类型与标准Java保持一致,强迫弱类型JS去做冗长强类型运算而已——凡有点JS开发经验者,你们能相信在客户端跑着如此海量科学计算后果吗...(另外,就连概念也不是他先想到,下文有论及) 此外,不单这个项目毫无价值,下载BicaVM后我还愕然发现,该项目作者居然在BicaVM项目中要求使用Python运行服务…… 你,你玩Javaer呢?...PS:个人始终喜欢JSVM第一版,也就是高仿Java结构那版,后来JSVM2或许因前版性能被某些闲人诟病,于是作者牺牲了太多Java特性搞了JSVM2,改已经不像Java类库,更贴近JQuery

    1.1K00

    也谈 setTimeout

    当然,初见这种用法时,我是一愣啊,什么情况,setTimeout( func, 0 ) 和直接调用 func 难道不是同一个效果?...那么,为什么放入 setTimeout( func, 0 ) 中就可以呢? 其实答案已经出来了, setTimeout 会等到重绘完成才执行代码,自然无往不利。...jQuery 作者 John Resig 这篇《How JavaScript Timers Work》通俗易懂地阐述了这个问题…… 以下是我对这篇文章理解: 理解 javasript 定时器内部机制是必要...这一次 interval 会被抛弃 (dropped) 。如果抛弃,那么有可能大量 interval 会在 timer 执行完后同时执行,这显然不符合逻辑。...对于这,浏览器排队方式是先检查有没有 interval ,如果没有,排队,有就抛弃。

    1.5K100

    也谈 setTimeout

    当然,初见这种用法时,我是一愣啊,什么情况,setTimeout( func, 0 ) 和直接调用 func 难道不是同一个效果?...那么,为什么放入 setTimeout( func, 0 ) 中就可以呢? 其实答案已经出来了, setTimeout 会等到重绘完成才执行代码,自然无往不利。...jQuery 作者 John Resig 这篇《How JavaScript Timers Work》通俗易懂地阐述了这个问题…… 以下是我对这篇文章理解: ---- 理解 javasript 定时器内部机制是必要...这一次 interval 会被抛弃 (dropped) 。如果抛弃,那么有可能大量 interval 会在 timer 执行完后同时执行,这显然不符合逻辑。...对于这,浏览器排队方式是先检查有没有 interval ,如果没有,排队,有就抛弃。

    1.3K10

    架构 | 到底该不该使用JavaScript框架

    Image by : opensource.com 随着互联网发展,网络发展已经远远超出了预期——不管是还是坏方面。...它设计是否良好?也许不是。它是健壮吗?这仅仅是为了我们当前需要。它意义不在于它是或者是什么更多需要思考是我为什么使用其他框架。 如果我不想编写自己HTTP请求引擎,也会有很多选择。...jQuery之所以被编写出来,是因为浏览器差异性非常大, JavaScript API 对此能做事情太少了。...有一段时间,几乎每个Web开发人员都在使用 jQuery ,这样他们可以使用文档对象模型(DOM)来处理简单innerHTML元素,但是这对页面加载时间产生了明显影响。...不要随意相信我说的话,你可以自己去看看到底是不是这样。如果没有它们,我们几乎什么也做不了。 即使我们使用框架 这不仅仅是我们如何以及何时使用框架问题;它还涉及到我们如何处理特性和附加组件。

    46310

    面试小结--前端面试几个雷点

    以前是:有了jquery,为什么要学JavaScript?现在是:有了react,vue,为什么要学JavaScript。很多人就是在原生基础还没有掌握情况下,就学热门框架,库。...即使用jquery或者vue,但jquery或者vue也不是万能,如果碰到用jquery或者vue解决不了需求,就基本不会了!...精通‘javascript’,就问面向过程,面向对象,函数式编程三者区别?是否有自己写过开源项目,是否读过jquery源码?项目上有哪些时候会用上闭包?...知道了他情况,我并没有展示出什么无奈或者愤怒事情,而是平常心对待。下面是我和他一些对话简要(凭我自己一点记忆写,意思大概是这样)。...我:你当时以这种方式写简历,有没有想过,穿帮会是什么情形,什么后果? 他:当时在培训时候,老师跟我们说,这样写没有面试机会。 我:你写时候,有没有评估到穿帮概率? 他:没有。

    95610

    一个Web页面的问题分析

    几个月之前我接到一个新开发任务,要在一个Web页面上面增添一些新功能。...在开发过程中发现代码中有很多常见不合适写法,结合这些问题,如何写出更好,更规范,更可维护代码,就是这篇文章要阐述内容。...,我们逐个讨论一下: HTML页面中包含了很多Javascript和CSS代码 一个正常Web页面通常有以下三部分组成,HTML,CSS,Javascript,其中HTML是数据,CSS负责样式,Javascript...,推荐使用。...我们应该尽量少引入全局变量,jQuery也不过提供了两个全局变量:$, jQuery。那么有没有可能在注入Javascript到HTML页面之后,实现零个全局变量引入?

    86490

    教你开发jQuery插件(转) 教你开发jQuery插件(转)

    下面进一步,在插件代码里处理每个具体元素,不是对一个集合进行处理,这样我们就可以针对每个元素进行相应操作。...另一方面,为了灵活,使用者可以传递参数,插件里面会给出参数默认值。...回到顶部 面向对象插件开发 为什么要有面向对象思维,因为如果这样,你可能需要一个方法时候就去定义一个function,当需要另外一个方法时候,再去随便定义一个function,同样,需要一个变量时候...变量定义:做法是把将要使用变量名用一个var关键字一并定义在代码开头,变量名间用逗号隔开。...对于jQuery社区,这里本身就是开源世界,同时JavaScript这东西其实也没什么实质性方法可以防止别人查看阅读你代码,毕竟有混淆就有反混淆工具,这里代码压缩更多还是上面提到压缩文件作用,

    3.3K10

    都9102年了,还需要用到 jQuery 吗?

    在本文中,我将介绍 jQuery 历史、优点、缺点以及为什么你仍要用它。 什么jQuery?...基本上它是一个 JavaScript 库,它使在访问 DOM 同时对 DOM 操作成为可能,并能在浏览器中用 JavaScript 执行某些几乎不可能做到操作。...许多著名公司和库使用 jQuery 作为依赖(GitHub,Bootstrap 5)。 jQuery 能够提供什么?...在 JavaScript 中发出 HTTP 请求方法 —— 使用XMLHttpRequest(XHR) 是一个繁琐过程。...在一些简单普通网站中,性能缓慢几乎不会引起注意,并且可能是为了更多功能所做折衷,但是在每一毫秒都很重要大型复杂网站中,jQuery 一般会降低此类网站性能。

    2.2K40

    面试官真的会问:new实现以及无new实例化

    content: '我有freestyle' } } new Test(); // Chrome控制台会输出以下内容 // {content: "我有freestyle"} 那么return一个普通类型数据有没有用呢...new构造函数显式return了new Shadow(),这样返回结果也就是new Shadow()实例化出来对象,使用new直接调用jQuery(),只是把jQuery()当成一个普通函数执行...可以说是很多,链式操作,插件体系这些特色都是我们耳熟能详扯太多了,就让我们来简单分析下jQuery实例化过程。 我这里拿到了jQuery v1.12.4版本代码,大概1W行,很舒服。...我们知道,如果仅仅通过new jQuery.fn.init(selector, context)是存在一个问题,问题就是得到实例不是jQuery实例,而是jQuery.fn.init实例。...方法怎么创建一个jQuery对象,做了哪些判断逻辑,这些都不是本文关注重点。

    48630

    【面试】1093- 21 道关于性能优化面试题(附答案)

    (3)用 innerhTML代替DOM操作,减少DOM操作次数,优化 JavaScript性能。 (4)当需要设置样式很多时,设置 className不是直接操作 Style。...19、什么时候会出现资源访问失败? 开发过程中,发现很多开发者没有设置图标,服务器端根目录也没有存放默认 Favicon.ico,从而导致请求404出现。...不过需要注意是,在更换版本之后,不要忘记测试代码,毕竟有时候不是完全向后兼容。 (2)使用合适选择器。...(3)以数组方式使用 jQuery对象。使用 jQuery选择器获取结果是一个 jQuery对象。然而, jQuery类库会让你感觉正在使用一个定义了索引和长度数组。...在性能方面,建议使用简单for或者 while循环来处理,不是$. each(),这样能使代码更快。

    1.6K20

    21道关于性能优化面试题(附答案)

    (3)用 innerhTML代替DOM操作,减少DOM操作次数,优化 JavaScript性能。 (4)当需要设置样式很多时,设置 className不是直接操作 Style。...(1)压缩源码和图片( JavaScript采用混淆压缩,CSS进行普通压缩,JPG图片根据具体质量压缩为50%~70%,把PNG图片从24色压缩成8色以去掉一些PNG格式信息等)。...19、什么时候会出现资源访问失败? 开发过程中,发现很多开发者没有设置图标,服务器端根目录也没有存放默认 Favicon.ico,从而导致请求404出现。...(3)以数组方式使用 jQuery对象。 使用 jQuery选择器获取结果是一个 jQuery对象。然而, jQuery类库会让你感觉正在使用一个定义了索引和长度数组。...在性能方面,建议使用简单for或者 while循环来处理,不是$. each(),这样能使代码更快。

    1.8K20

    Github 移除 JQuery 过程

    什么jQuery在早期就有意义 GitHub.com在2007年底引入jQuery 1.2.1作为依赖项。从某种意义上讲,那是谷歌发布其Chrome浏览器第一个版本前一年。...最重要是,使用jQuery在一个浏览器中构建JavaScript特性通常也可以在其他浏览器中工作。...实现CSS类名切换; CSS现在支持在样式表不是JavaScript中定义可视化动画; $.ajax请求可以使用Fetch标准执行; addEventListener()接口足够稳定,可以跨平台使用;...默认情况下,当没有匹配初始选择器时,jQuery会自动跳过整个expresion;但对我们来说,这种行为是一个bug,不是一个特性。...相反,我们: 设置指标,跟踪每行代码使用jQuery调用比率,并随时间监视该图,以确保它要么保持不变,要么下降,不是上升。 我们鼓励在任何新代码中导入jQuery

    2.1K10

    小兔JS教程(三)-- 彻底攻略JS回调函数

    传进去目的仅仅是为了在某个时刻去执行它。 如果执行,那么你传一个函数进去干嘛呢? 就比如说对弈下棋,如果你都不想赢,那么你为什么要下棋?...; } 不是一个意思吗,不知道我这样写你是不是理解一点呢?...我们定义了一个变量a,它值为100,那么如果我们使用这个a,是不存在什么执行问题,直接调用就OK了,这就是所谓执行了一次右查询。...我们把里面的 function(){} 去掉: $(); 是不是就变成这样了?那好,我就想请问一下了,你见过除了函数之外什么东西要打括号吗?有没有,就问你一句话,有还是没有?...我知道,我传进去以后,你肯定会在某个地方打一个括号帮我执行,就算执行,它也肯定会把这个回调函数赋值给其他变量。这是第一点,第二点,我写这个函数,还带了一个参数,参数名字叫e。 OK,非常

    4K70
    领券