javascript - 原型(prototype)到 jQuery : Mindset migration?

标签 javascript jquery prototypejs

这不是关于并排技术比较,而是关于如何“在 jQuery 中思考”与“在 Prototype 中思考”。

几年来我大量使用 Prototype,直到大约一年前我才开始大量使用 jQuery。

使用 Prototype,我可以编写一些相当优雅的代码;我的老板曾经审查过我的大量代码,并评论说这是他读过的第一个 Javascript。我理解 - 并且从一开始就非常理解 - 几乎是本能地理解 Prototype 试图做什么,并且知道如何使用它。

我的jQuery代码多了很多,怎么说呢,“工匠般”。我觉得我每一步都在与 jQuery 作斗争。我不得不(尝试)强制自己坚持下去,而不是陷入“原生”JS,我知道我可以更快地摆脱干净的跨浏览器代码。与它打交道会增加而不是减少它的挫败感。

这并不是(或至少不完全是)对可用功能不熟悉。我经常知道我需要使用给定的功能,但它的使用方式似乎真的很奇怪。这通常表明我的思路完全错误。

我想得越多,我就越想尝试以原型(prototype)方式使用 jQuery。

一定有一些令人眼花缭乱的闪光,但我还没有发生过。特别是如果您在两者上都工作过很多,您发现方法上最根本的区别是什么?从一种转换到另一种时,您需要如何调整心态?

不要害怕说出非常明显的事情,因为它可能只是令人眼花缭乱的闪光...

最佳答案

我经历了那个转变。一遍又一遍地告诉自己的主要事情是,jQuery 的首要任务是让 DOM 操作更容易,跨平台更安全。在 jQuery 中没有“reduce”(Prototype 曾经称它为“inject”,我想)。为什么?因为维护者认为它对于 jQuery 的主要任务并不重要。

因此,当您编写代码以完成自己的工作时,Prototype 的基础对象扩展逐渐融入您的编码风格的方式,嗯,这在普通的 ol'jQuery 中几乎不会发生。 (但是,请参阅可爱的 Underscore.js 库,了解以 jQuery 友好的方式获得某些功能的方法。)

对我来说,这让我更容易弄清楚如何在 jQuery 上构建。这只是一种不同的东西。现在,jQuery 非常可靠,它确实使 DOM 操作和 HTML 处理比您从纯 Javascript 获得的更好很多。 (我认为 Prototype 也做得不错,但 jQuery 非常专注于这个问题。)

关于javascript - 原型(prototype)到 jQuery : Mindset migration?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3592583/

相关文章:

javascript - 在我的 div 中创建一个表的函数

javascript - CKEditor setData() 更改内容但抛出错误

javascript - 需要一个弹出窗口说明表单是否有效 - 无论如何都无效

javascript - 将小函数从 jQuery 移植到 Prototype?

javascript - Script.aculo.us Drag 'n' Drop - 恢复 onEnd 条件

javascript - Javascript "multi-dimensional arrays"的奇怪问题(即数组的数组)

jquery - Django Tastypie 总是返回 401 未经授权

javascript - 如何将所有输入元素作为单独的元素推送到数组?

javascript - 修改复选框的checked属性无法正常工作

javascript - 原型(prototype)序列化函数无法识别