jef*_*ell 12 javascript coding-style javascript-framework
这更像是一种风格和偏好的问题而不是任何事情,尽管可能还存在性能方面的考虑.
如果你正在使用一个框架(比如说jQuery是为了参数,虽然它可以是任何框架),你需要编写一个新函数.这是一个简单的功能,您可以轻松完成它而无需使用框架.
无论如何使用框架是否有优势,因为它已经加载到浏览器的内存中,有一个易于访问的DOM映射等等?或者,普通的js总是会解析得更快,因为它是"原始的"并且不依赖于框架?
或者仅仅是品味问题?
答案将在很大程度上取决于您正在努力完成的工作.通常,如果使用框架来实现可以使用"vanilla"JavaScript实现的功能,则可以保证至少对函数开销造成轻微的性能损失.这种性能损失通常是名义上的,并且在考虑到框架的其他优点时(开发速度,代码更清晰,易于维护,可重用的代码等)可以忽略.
如果你必须拥有最有效的代码,那么你应该尝试编写高度优化的纯JavaScript.如果像在大多数现实场景中一样,您并不关心性能差异的几毫秒,那么请坚持使用Framework来保持一致性.
根据我对 jQuery 的理解,它实际上并不在内存中维护 dom 的映射,而只是具有用于遍历 dom 的跨浏览器方法。某些浏览器中的某些内容自然会比其他浏览器更快(例如 Firefox 中基于类的选择器将比 IE 中更快,因为 IE 没有 getElementsByClassName 的内置函数,而 Firefox 有)。如果您不需要框架方法来执行操作,我会说继续使用本机 JS,因为这通常是您选择的框架将使用的。