jquery使用感受 对比mootools (持续更新)
程序员文章站
2022-06-05 20:22:15
...
最近尝试在项目中使用jquery,(以前一直是用mootools的),jquery不是很熟,所以可能里面说到jquery的有些缺点是我自己学艺未精造成的。
持续更新中,开发中有什么感想就随笔记下来。
- 先来个好评 : 可以直接往获取的element数组上绑定事件,使用起来很方便。 这应该得益于$()中产成的jquery对象吧。
- 没有获取一个对象的类型的方法(也可能是我没找到)。被mootools惯坏了,用到这个很不适宜。
- 没有直接new Element 的方法,大都使用$().append(),导致许多做法不能实施,比如:创建一个页面对象,再往上绑定数据。 而转为在用append添加的代码中加入id,再用全局对象做map缓存数据,总之感觉不爽。
- 没有对于对象的merge方法, merge({a:1, b:2}, {a:2,c:3}) == {a:2, b:2, c:3}这样多优雅呀,特别是处理一些默认参数的时候。
- 还是觉得少了点函数,比如 Function.pass 给函数绑定参数,有些地方必须用到呀!于是自己写了一个 $pass(arg, fn) 感觉这个比mootools里面的还好用。
- each方法的问题: $.each(array, function(index, record)) 方法简直是个巨大的错误,“回调函数”里面为什么要加个索引? 严重不符合函数式编程对于each的定义,而且和 $.map 函数的定义也不一致。 你把索引放在后面做成可忽略的也行呀!(估计是开始没考虑到,后期想改也没法了)——$().each 更是混乱,居然将record绑定在this上,而且还是没有包装的el。
- 昨天用jstree插件,没文档,真辛苦,看源码也很乱。不明白为什么所有的方法都以 $().jstree(type) 的方式出现,仅用参数字符串来区分? 感觉jquery真的不适合做大型的东西。
- $().toggle() 方法真的很方便,让人倾向于在html中写代码。
上一篇: 生活小常识,豆浆渣怎么用
下一篇: 春季最后一个节气——谷雨吃什么美食呢