作为初学者,对这个问题感到困惑
1
binux 2019-06-23 11:28:30 +08:00
需求变复杂了
|
2
levon 2019-06-23 11:29:55 +08:00 via iPhone
移动端富客户端
|
3
rogwan 2019-06-23 11:34:54 +08:00 via Android
后端 API 化,前端 SPA 化,虚拟 DOM。jquery 依旧是那把锋利的刀,只是现在前端上来就是集成工具箱。
|
4
SuperMild 2019-06-23 11:41:39 +08:00 2
以前的主流是整个页面跳转刷新,后端负责把渲染好的 html 发给前端,前端用 jQuery 之类的做一些简单处理。
后来单页面应用兴起,后端只返回 json 给前端,而前端几乎包揽了一切工作(以前业务逻辑、路由在后端,现在都移到前端了)。 你可以试试做一个稍复杂一点的单页面应用,就能明显感受到新型前端框架的好处。 |
5
kekxv 2019-06-23 11:43:04 +08:00 via Android
别问,问就是人变懒了
|
6
shintendo 2019-06-23 11:47:12 +08:00 1
前端以前是表单页面,现在是客户端应用,工程复杂度提高了,jQuery 的命令式编程就很难 hold 住了,需要声明式的虚拟 DOM 框架。
写简单的活动页面还是可以的。 |
7
shintendo 2019-06-23 11:51:38 +08:00 7
“现在前端太浮躁了一年八个新框架刷存在感怀念 jQuery 一把梭的黄金年代”党还有 30 秒到达战场
|
8
peneazy 2019-06-23 11:57:10 +08:00 via iPhone
前端变复杂了,业务逻辑都往前端跑
|
9
DOLLOR 2019-06-23 11:59:59 +08:00
想钻研 web 底层的,直接用 DOM API,而不是 jQuery 这个经过二次封装的“库”;
想专注业务逻辑的,不如用各种框架,而不是 jQuery 这个封装不够彻底的“框架”。 而 jQuery 就在一个高不成低不就的尴尬位置,除了维护旧页面兼容 IE5 以外,已经想不到 jQuery 需要的场合了。 |
10
love 2019-06-23 12:09:40 +08:00
jquery 只是 dom api 的简单封装,你可以试试用 jquery 写个稍复杂交互的 web 页,会死,特别是数据直接绑定 dom 节点非常的不灵活和不直观,而上古的分离框架 backbone+jquery 组合也好不了太多,因为没有嵌套能力。
react + redux 这类模式就能很好地梳理复杂逻辑,项目再大也很清淅。 |
11
codermagefox 2019-06-23 12:23:06 +08:00
尝试用 Jquery 撸一个简单的页面编辑器吧.
你就懂了.... |
12
nisnaker 2019-06-23 12:24:30 +08:00
1、当年做前端写 js 需要兼容各种浏览器,这一点如果自己做及其恶心,jQuery 的出现相当于有了一个统一的 api,所以大火。成也风云败也风云,现在基本都是面向 chrome 开发,接口统一,jQuery 就没那么重要了。
2、jQuery 的选择器功能强大,用起来很顺手,然而现在浏览器自带了 querySelector。 3、jQuery 写动效也很方便,然而现在有了 css3。 4、很早也用 jQuery 写过 SPA,毕竟 SPA 用户体验好,然而自己维护 state 很头疼,后来的解决方法跟现在的前端框架也差不多了,也就没必要再用 jQuery 了。 我现在写一些简单的 landing page 还是会用,毕竟打开编辑器直接就能开干还是蛮爽的。 |
13
terranboy 2019-06-23 12:25:42 +08:00 1
淘汰?应用场景不一样 各大门户网站哪个没有 JQuery
|
14
tonylau 2019-06-23 12:28:49 +08:00 via Android
同 3 楼
|
15
wesnow 2019-06-23 12:29:24 +08:00 via Android
互联网上的网站有几个不用 JQuery 的?
|
16
impl 2019-06-23 12:31:29 +08:00 via Android
达尔文说,物竞天择
|
17
wd 2019-06-23 12:45:25 +08:00 via iPhone
因为电脑配置变高了
|
18
YuTengjing 2019-06-23 13:08:06 +08:00 via Android
组件化发展趋势,声明式战胜了命令式
|
19
q8164305 2019-06-23 13:12:06 +08:00 via Android
交互多了,你试试页面交互多的时候用 jq 写个试试,难度极高
|
20
garlics 2019-06-23 13:14:30 +08:00 via Android
没有双向绑定?
|
21
Merlini 2019-06-23 13:15:20 +08:00
在数据驱动的今天,数据绑定的框架比 JQuery 用起来方便很多。JQuery 兼容性很高,但抽象度其实并没有那么高。它只是做了一些很简单的事,让你用起来很方便,从概念角度上来说跟原生 js 没有太大区别。
当然在写一些简单的小工具的时候,JQuery 的优势就体现出来了,快糙猛,舒服的很。 |
22
iMusic 2019-06-23 13:17:33 +08:00
jQuery 最核心的特性是使 JS 操作 DOM 更简单,并且磨平浏览器之间的差异,现在随着浏览器发展,已经提供足够的 API 去方便的操作 DOM,各个浏览器也向着规范靠拢,简单的页面大多时候没必要引入 jQuery,浏览器提供的 API 已经够用,同理还有`lodash`。
另外现代前端开发稍微复杂点的需求,还用原始的读写 DOM 不仅麻烦而且性能不高。前端开发说到底就是 state 和 UI 的同步,现在主流的框架有一个共同点,底层 DOM 的更新和优化交给框架来做,开发者主要关注 state 的变化。 总结,一是浏览器自身的发展,二是现在复杂的开发需求。前者使前端开发减少了对 jQuery 的依赖,后者造成 jQuery 不太够用。 |
23
gamexg 2019-06-23 14:29:58 +08:00
双向绑定?
|
24
jin5354 2019-06-23 14:53:47 +08:00
都是什么鬼回复 原因就一行字:不再需要直接操作 DOM 了
|
25
Tink 2019-06-23 14:55:20 +08:00 via iPhone
现在前端动不动就是脚手架
|
26
limbo0 2019-06-23 16:11:06 +08:00 via Android
维护和编写,推荐拿 vue 试试
|
27
leafre 2019-06-23 16:17:02 +08:00
前后端分离方便,回归 js 本质
|
28
dobelee 2019-06-23 16:17:44 +08:00 via Android
说需求变复杂的站不住脚,一直以来哪有不复杂的需求,jQuery 一把梭当年也可一战。
|
29
cnzzz 2019-06-23 16:57:30 +08:00
懒
|
30
BlBana 2019-06-23 17:04:00 +08:00 via Android
那么有个问题,现在初学者入门前端还有必要深入学习一下 jQuery 么,还是说看完 JS 基础以后直接框架上手练习
|
31
askfilm 2019-06-23 17:06:37 +08:00
啊? jQuery 被淘汰了吗?
|
33
php01 2019-06-23 18:00:20 +08:00
先问是不是,再问为什么。
|
34
notreami 2019-06-23 18:58:32 +08:00
jquery 没法装 13,webpack 才能装 13
|
35
zlhsvc 2019-06-23 19:48:41 +08:00
现在前端都用啥框架了?我的记忆还在 JQ 年底
|
36
longbo666 2019-06-23 22:10:59 +08:00
没淘汰啊,做官网门户还要用的,做 webapp 可能用不到
|
37
winiex 2019-06-23 22:32:41 +08:00
尝试用 jQuery 和 react/vue 都写一个带关键词推荐的即时输入搜索框的小需求就懂了。
|
38
justin2018 2019-06-23 22:36:07 +08:00
Webpack 配置工程师 😁
|
39
KasuganoSoras 2019-06-24 00:01:46 +08:00 2
|
40
KuroNekoFan 2019-06-24 07:53:38 +08:00 via iPhone
面条代码不好维护
|
41
q397064399 2019-06-24 09:00:15 +08:00
这是 20 年前的网站
这是 20 年后的网站 20 年后的网站 无论是交互体验 还是实时动态化 ,从交互功能上来讲 碾压 20 年前的网站 100 倍 我举的还是微博这种 社交网站,你要去用一些看板类的网站就明白了 |
42
kisshere 2019-06-24 09:13:38 +08:00
不管前端各种层出不穷的框架
jQuery:你大爷永远是你大爷 |
43
TimPeake 2019-06-24 09:26:32 +08:00
@q397064399 微博的 pc 页面估计得有 10 年没大更新了
|
44
kevin1852 2019-06-24 09:28:49 +08:00
我觉得主要还是前端要搞面向对象,jq 不是面向对象的
|
45
bmy 2019-06-24 09:30:29 +08:00
我就经常 angular/Vue 和 jQuery 一起混用。。
|
46
xianxiaobo 2019-06-24 09:41:39 +08:00
现在大部分前端项目依然在用 jquery,但是 jquery 的地位变低了, 以前可以说整个项目依赖 jquery,现在是某个插件依赖 jquery
|
47
simo 2019-06-24 10:14:59 +08:00
jQuery 主要为了解决兼容而造出来的,并且试用的前端业务复杂度也比较低。
当下的好多项目采用前后分离方案,前端工程化程度越来越高,jQuery 并不适用。 |
48
micean 2019-06-24 10:21:13 +08:00
ES5、ES6
|
49
ben1024 2019-06-24 11:22:05 +08:00
淘汰不存在,只是从主力变辅助
v2 都没淘汰 JQuery |
50
Bluecoda 2019-06-24 11:26:23 +08:00
要想用起来体验好,客户端就得有更多侧重,代码量肯定要变大
单纯的 jquery 写的代码难写,难懂,难维护,所以后面就有 backbone+jquery 但还是不够,所以就有了现在的框架,并且发现 jquery 不需要了 |
51
hyy1995 2019-06-24 11:26:25 +08:00
jquery 为什么不行?为什么被 vue、react、angular 等流行框架取代?一句话概括吧:前后端分离
|
52
o0 2019-06-24 11:34:08 +08:00
淘汰还是不至于的。
|
53
jimliang 2019-06-24 11:38:39 +08:00
@q397064399 为什么要用微博的界面举例子呢,谁不知道微博的 web 界面做得贼垃圾,卡顿、资源占用高、反馈迟钝,用起来非常难受。
|
54
q397064399 2019-06-24 11:41:09 +08:00
@jimliang #53 因为微博是我的图床.. 我顺带截图了
|
55
mywaiting 2019-06-24 13:09:36 +08:00 1
淘汰还至于吧,至少小项目还是可以带上 jQuery 的,不是谁都需要 SPA 这样的
只是时代变了,jQuery 没有引领 web 前端的潮流了~ 不过 jQuery 的理念,我觉得在各大 MVVM 框架里发扬光大啊,从这个层面来说,jQuery 不曾淘汰,反而时代和技术的发展,越发显得 jQuery 当初设计理念的前瞻和先进 我觉得前端一直给别人一种假象,就是某某落后或者没有用了,君不见 jQuery 还在 wordpress 里用,那就说明 jQuery 运行在数以千万的网站上。现在的 react、vue 这些,炒得火热,但未必有 jQuery 的 X 分之一的使用率 再者从代码的角度而言,jQuery 的代码堪称集 JavaScript 之大成,无论是代码的质量、使用、API 设计,可以说是前端中最牛逼,JS 里能找到的黑科技,从 jQuery 中几乎都能找到,前端中的最牛逼,我觉得没有之一。作为初学者,如果能从中了解一二,那对以后的学习那是大有裨益的 |
58
sugars 2019-06-24 13:47:22 +08:00
业务一旦复杂,用 jq 来写的话,后期拓展和维护就是噩梦
|
59
stabc 2019-06-24 13:48:32 +08:00
常规网页还是离不开 jquery。
|
60
qsnow6 2019-06-24 13:49:34 +08:00
angular/Vue 之流如何搞定 SEO 需要被百度爬虫抓取的问题
|
61
maichael 2019-06-24 13:49:35 +08:00
说一千道一万,就是 jQuery 写起来没有现代一些的前端框架爽,旧项目用的不少,但如果是新项目,选用 jQuery 的肯定没多少。
|
62
alexkkaa 2019-06-24 14:02:41 +08:00 via Android
淘汰? 需要 seo 的哪个不用 jquery。
至于内部系统,手机里的非常规网站比如各种混合开发微信小程序等等,还有管理后台这种的那就想用什么用什么,什么方便快速用什么。 百度的尿性已经决定了国内 seo 已死。现在国内都在网手机上引导。 别看现在流行 vue 之类的,有水平的前端都是 jquery 一把梭,现在的前端都快忘了什么是 dom 了 |
63
realkenshinji 2019-06-24 15:13:29 +08:00 via iPhone
浏览器的 api 升级了
|
64
CocaColf 2019-06-24 16:21:00 +08:00
需求变复杂了,视图和数据管理也随之变复杂
|
65
halk 2019-06-25 14:02:27 +08:00
请参考 github 的 blog: Removing jQuery from GitHub.com frontend
https://github.blog/2018-09-06-removing-jquery-from-github-frontend/ |
66
Hoshinokozo 2019-07-01 11:52:44 +08:00
jQuery 简化了 DOM 操作,而现代 MVVM 框架直接帮助你操作 DOM,从这个角度来看这是对 jQuery 的进一步抽象。
|