想学习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 相关文章推荐
用JSON做数据传输格式中的一些问题总结
Dec 21 Javascript
js的[defer]和[async]属性
Nov 24 Javascript
JavaScript类型系统之正则表达式
Jan 05 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
Mar 31 Javascript
jQuery ajax提交Form表单实例(附demo源码)
Apr 06 Javascript
js实现的xml对象转json功能示例
Dec 24 Javascript
vuejs2.0实现分页组件使用$emit进行事件监听数据传递的方法
Feb 22 Javascript
Vue.js鼠标悬浮更换图片功能
May 17 Javascript
webpack公共组件引用路径简化小技巧
Jun 15 Javascript
vscode中vue-cli项目es-lint的配置方法
Jul 30 Javascript
深入了解JavaScript 防抖和节流
Sep 12 Javascript
详解微信小程序(Taro)手动埋点和自动埋点的实现
Mar 02 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
php面向对象全攻略 (十七) 自动加载类
2009/09/30 PHP
PHP提取字符串中的图片地址[正则表达式]
2011/11/12 PHP
php中解析带中文字符的url函数分享
2015/01/20 PHP
百度地图经纬度转换到腾讯地图/Google 对应的经纬度
2015/08/28 PHP
php str_getcsv把字符串解析为数组的实现方法
2017/04/05 PHP
Javascript实例教程(19) 使用HoTMetal(7)
2006/12/23 Javascript
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
Backbone.js的Hello World程序实例
2015/06/19 Javascript
理解和运用JavaScript的闭包机制
2015/08/13 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
JS与Ajax Get和Post在使用上的区别实例详解
2016/06/08 Javascript
JS实现的跨浏览器解析XML文件实例
2016/06/21 Javascript
BootStrap初学者对弹出框和进度条的使用感觉
2016/06/27 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
深入学习jQuery中的data()
2016/12/22 Javascript
JavaScript DOM节点操作实例小结(新建,删除HTML元素)
2017/01/19 Javascript
js模拟微博发布消息
2017/02/23 Javascript
详解利用 Vue.js 实现前后端分离的RBAC角色权限管理
2017/09/15 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
2018/03/26 Javascript
Javascript中弹窗confirm与prompt的区别
2018/10/26 Javascript
原生JS forEach()和map()遍历的区别、兼容写法及jQuery $.each、$.map遍历操作
2019/02/27 jQuery
详解新手使用vue-router传参时注意事项
2019/06/06 Javascript
jQuery实现王者荣耀手风琴效果
2020/01/17 jQuery
jquery实现异步文件上传ajaxfileupload.js
2020/10/23 jQuery
python+opencv轮廓检测代码解析
2018/01/05 Python
将Dataframe数据转化为ndarry数据的方法
2018/06/28 Python
Django发送邮件和itsdangerous模块的配合使用解析
2019/08/10 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
Python中join()函数多种操作代码实例
2020/01/13 Python
美国家具网站:Cymax
2016/09/17 全球购物
皮尔·卡丹巴西官方商店:Pierre Cardin
2017/07/21 全球购物
一些高难度的SQL面试题
2016/11/29 面试题
文明礼仪演讲稿
2014/05/12 职场文书
2014年大学生预备党员思想汇报1000字
2014/09/13 职场文书
解除劳动合同证明书
2014/09/26 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书