jQuery是一个用JavaScript语言写的主要针对DOM操作的DSL(domain-specific langauge)
js不需要编译
《JavaScript语言精粹》
jQuery 解决了怎样的问题?
浏览器上的 JS 自始至终(主要)只在做两件事情,DOM 操作和网络请求
jQuery 用一种原始而又简单的方案解决了这个问题——优雅的API,但缺点是你依然要理解 DOM才能自如地运用jQuery。而 A 和 R 这类框架则直接屏蔽掉 DOM 的细节。对的,你发现了,前端就是这么痛恨和 DOM 打交道。
- 从选择器出发方便易用,提前实现了一些CSS选择器
- 处理了很多浏览器兼容性问题
- 把链式调用变得流行了起来
- 简洁优雅的API,以及深入人心的set all, get first
- 一个套实用性和性能都很不错的动画库
- 简单但开放的插件体系
导致了前端行业门槛的进一步降低
我平时面试的时候虽然问的问题都会是与原生JavaScript基础相关的问题,所有题目代码也都会要求用原生来写。但做公司项目的时候有框架我会要求组员坚决使用框架,毕竟效率第一,公司项目不是你的技术展示台,也不是为你一个人学习服务的
用jQuery的不懂JavaScript?
很多人学了jQuery之后才去学JS的
jQuery的诞生就是为了简化和绕过原生js坑的目的,屏蔽了很多浏览器兼容性的问题,提供了更加友好的书写方式,对开发者当然更合适
js是一门很灵活的语言,在使用得当的情况下,原生代码肯定是要比任何js库都要快的
JQ比原生JS慢上 10倍(chrome)~100倍(ie). 具体数忘了, 反正是这个数量级的…尤其是有些人喜欢滥用选择器和不用链式写法
jQ等框架解决易用性和兼容性问题,效率稍低
原生js解决运行效率问题,兼容比较麻烦
PC主站在未来一段时间离不开Jquery ,移动端正在走向MVVM 工程化