想学习javascript JS和jQuery哪个重要 先学哪个


Posted in Javascript onDecember 11, 2016

笔者以自己身学习和使用经验分享给大家,有任何问题或疑惑,欢迎留言

在回答题目问题前,首先大家需要了解下什么是js,什么是jQuery

想学习javascript JS和jQuery哪个重要 先学哪个

js,即JavaScript
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

想学习javascript JS和jQuery哪个重要 先学哪个

jQuery

jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多)

想学习javascript JS和jQuery哪个重要 先学哪个

通过上面的简单介绍,想必大家已经知道了最重要的一点,即:jQuery是一个javascript库;
那么不用笔者强调,大家应该都知道js和jQuery哪个更重要,先学哪个
其实只要学好了javascript,使用jquery将不会有什么问题
依笔者经验,新手程序员必须花时间重点学习一下javascript;
至于jQuery可以直接在使用时参考jQuery参考文档,不需花太多时间在上面,当然如果读者时间充裕,也可以学习下jQuery源码,一边更好的了解jquery实现原理

三水点靠木小编小结:

想学习js(javascript),必须学习原生的js 代码,这样才能了解js的精髓之所在。而jquery就是js的库,但是在实际应用中如果大量使用js推荐使用jquery,比较jquery已经对多浏览器的兼容性好,省去了很多麻烦。不用考虑兼容性。如果只会jquery而不会js不利于其它编程语言的学习。

javascript和jquery这两者之间几乎没有可比性。

虽然jquery基于javascript,但是实际上jquery是和javascript完全不同的两种语言,jquery实际上是一种逻辑式语言和纯粹的函数式语言的结合体。由于这两个特性,因此jquery对DOM的操作极度简化。使用jquery往往可用一两行代码实现javascript原生代码几十甚至上百行代码才能实现的功能。

但是jquery是一个特化的框架,它不是一个完整的解决方案,仍然离不开javascript。

如果想要一个基本上不依赖于原生javascript,可以尝试Sencha。

各?封?,包括jq, dojo等等,主要目的就是??了省心,拿jq?碚f:
JQ对不同浏览器的事件,DOM对象,都进行了封装,各种操作都可以直接兼容各种浏览器, 要知道, 不同浏览器的区别不仅仅是在CSS里写"-webkit-"还是"filter"的区别, 连事件模型这种底层的东西都不一样= =
JQ特有的CSS-LIKE选择器, 链式写法, 封装的各类animate函数, 封装了的异步加载, 都大幅提高了开发效率, 减少重复劳动
JQ用delay和一系列的函数封装了AJAX操作, 这个功能目测还在不断改进和完善. 反正是比JS省心就是了.
其他就是有些常用函数JQ有所以不用自己写了,你比如浏览器检测...
插件不断丰富, 资料丰富 等等
当然,这样也导致了
JQ比原生JS慢上 10倍(chrome)~100倍(ie). 具体数忘了, 反正是这个数量级的...尤其是有些人喜欢滥用选择器和不用链式写法
所以说, 如果只用一句JS就可以解决的问题, 就不要用JQ了啊亲...亲测$('#x')比getElementById('x')慢40倍
这是@TooBug兄的实测代码http://fiddle.jshell.net/toobug/mZPXq/
JQ也不见得适用所有情况就是了, 网站规模更大就会凸显JQ的不足. 比如没有命名空间- -. 很多网站是根据自己的情况建立自己的函数库.
题外话, 如果项目相比"一个网页"更偏向"一个APP"的情况, jq 不?得是最合?的

谈性能一般得看你的业务复杂度、开发能力、团队规模,不能一概而论
1.业务复杂度高的项目或网站,开发能力不是很强的团队,采用原生JS都会没有机会让你考虑性能,兼容性就是很大的障碍;
2.业务复杂度低,就Hello world的功能,就无所谓性能;
3.如果团队牛叉、业务复杂的时候,代码可维护性才是最重要的,性能调优只会在真正出现渲染瓶颈的时候才做;
4.性能还得往前看,知道Office为啥成功吧,因为他们一直往前看,电脑的处理能力越来越强了,啥问题都不是问题了。

1、jQ等框架解决易用性和兼容性问题,效率稍低
2、原生js解决运行效率问题,兼容比较麻烦
3、JQ的优势是能让程序员多活好几年,原生js能让程序员水平提高一个档次
其实jquery和原生JS并没有什么很大的区别 jquery底层还是调用原生的JS 只不过jquery的api封装了浏览器的差异性 为开发提供了便捷处理方式
js学好就都搞定了。jquery只是一个js的框架而已,js的框架多着呢。这个只是比较好而已。强烈建议学习js,做项目的时候用jquery就行了。
自己学习的时候 js的优势就是你学到的东西更多一点处理浏览器之间的兼容问题之类的。会给你积累经验。
做项目的时候jquery的有点就是效率高,开发成本降低了N倍。

4、js:简单的东西实现起来很复杂
jquery:复杂的东西实现起来很简单
论性能,jquery差太多了
5、jquery是用js编写的函数库,把我们平时经常用到的效果都封装实现了,再使用时只需要调用即可。需要DIY的话,当然还是要用到JS了。
6、js是基础,jQuery只不过是一种工具而已,基础很重要

就目前看到的,大多数人用jquery无非两个方面,一个dom选择,以及衍生出来的.children,.siblings 等等,再一个就是event事件绑定,其他什么循环,方法声明啊,包括常用到的settimeout不都是原生的吗。

我觉得jquery和原生根本不应该认为是对立关系,一个jquery高手肯定也会用到js类啊,理解原型链啊,理解dom这些东西,所以不应该认为用原生的就是厉害,用jquery就是不行这样的想法。

你html结构复杂,用jquery选择器再方便不过了,设计要求的效果特别苛刻,用jquery的动画和特效再适合不过了,这些都是无可厚非的事情,但是你不可能一点不用到原生js而只用jquery吧,那是不可能的,变量声明都是原生js。

所以面试的时候对面问你原生js用的怎么样的时候你大可自信的说,除了 dom 选择和 eventlisterner不太熟以外,其他都没问题

Javascript 相关文章推荐
jQuery 使用手册(一)
Sep 23 Javascript
倒记时60刷新网页的js代码
Feb 18 Javascript
avascript中的自执行匿名函数应用示例
Sep 15 Javascript
JavaScript中的this到底是什么(一)
Dec 09 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
Jun 21 Javascript
jQuery的deferred对象使用详解
Sep 25 Javascript
详解vue组件化开发-vuex状态管理库
Apr 10 Javascript
Bootstrap fileinput文件上传组件使用详解
Jun 06 Javascript
在vue中添加Echarts图表的基本使用教程
Nov 22 Javascript
javascript数据结构之多叉树经典操作示例【创建、添加、遍历、移除等】
Aug 01 Javascript
vue.js2.0 实现better-scroll的滚动效果实例详解
Aug 13 Javascript
微信小程序用户授权弹窗 拒绝时引导用户重新授权实现
Jul 29 Javascript
基于javascript实现的购物商城商品倒计时实例
Dec 11 #Javascript
基于jquery实现的鼠标悬停提示案例
Dec 11 #Javascript
jquery滚动条插件(可以自定义)
Dec 11 #Javascript
jquery实现简单的瀑布流布局
Dec 11 #Javascript
js倒计时显示实例
Dec 11 #Javascript
jQuery实现模拟flash头像裁切上传功能示例
Dec 11 #Javascript
javascript实现将数字转成千分位的方法小结【5种方式】
Dec 11 #Javascript
You might like
应用开发中涉及到的css和php笔记分享
2011/08/02 PHP
php专用数组排序类ArraySortUtil用法实例
2015/04/03 PHP
详解WordPress开发中用于获取分类及子页面的函数用法
2016/01/08 PHP
CI框架无限级分类+递归的实现代码
2016/11/01 PHP
Thinkphp5+Redis实现商品秒杀代码实例讲解
2020/12/29 PHP
用js实现随机返回数组的一个元素
2007/08/13 Javascript
一个很酷的拖动层的js类,兼容IE及Firefox
2009/06/23 Javascript
Js数组的操作push,pop,shift,unshift等方法详细介绍
2012/12/28 Javascript
jQuery滚动加载图片实现原理
2015/12/14 Javascript
JavaScript:Date类型全面解析
2016/05/19 Javascript
基于Bootstrap实现tab标签切换效果
2020/04/15 Javascript
浅谈AngularJs指令之scope属性详解
2016/10/24 Javascript
JS无缝滚动效果实现方法分析
2016/12/21 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
JS的函数调用栈stack size的计算方法
2018/06/24 Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
2019/03/26 Javascript
Python编写一个闹钟功能
2017/07/11 Python
Python 调用 Outlook 发送邮件过程解析
2019/08/08 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
2020/03/09 Python
python实现FTP文件传输的方法(服务器端和客户端)
2020/03/20 Python
python利用Excel读取和存储测试数据完成接口自动化教程
2020/04/30 Python
如何快速理解python的垃圾回收机制
2020/09/01 Python
Python经典五人分鱼实例讲解
2021/01/04 Python
python使用scapy模块实现ping扫描的过程详解
2021/01/21 Python
牦牛毛户外探险服装:Kora
2019/02/08 全球购物
俄罗斯奢侈品牌衣服、鞋子和配饰的在线商店:INTERMODA
2020/07/17 全球购物
综合素质的自我鉴定
2013/10/07 职场文书
医学生自荐信
2013/12/03 职场文书
新娘父亲婚礼致辞
2014/01/16 职场文书
社区庆中秋节活动方案
2014/02/07 职场文书
办公室主任主任岗位责任制
2014/02/11 职场文书
好人好事事迹材料
2014/02/12 职场文书
《乌塔》教学反思
2014/02/17 职场文书
安全生产标语
2014/06/06 职场文书
李白故里导游词
2015/02/12 职场文书
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers