【发布时间】:2012-08-01 16:54:02
【问题描述】:
像许多人一样,我通过学习 jQuery 来学习 JavaScript。
最近我一直在替换以下位:
$(this).attr('title') 与this.title
$(this).attr('id') 与this.id
$(this).val() 与 this.value
$(this).parent() 与 this.parentNode
$(this).attr('class') 与 this.className
我的代码不仅更干净,而且技术上更快。
这种类型的减少是否可以接受和鼓励?
我应该在
raw纯 JavaScript 而不是 jQuery 中做任何其他常见的做法吗?这种类型的简化主义是否存在任何潜在的跨浏览器问题?
【问题讨论】:
-
是的,我们鼓励这样做。进行(通常)两个函数调用以获取您已经可以立即访问的内容是没有意义的。
-
我不会将 Javascript 称为“原始”。
-
试图记住哪些在没有 jQuery 的情况下可以安全调用,哪些不是。当您有时不得不使用 jQuery 版本时,它看起来也不一致,因为边缘情况的错误修复和附加功能(例如采用回调函数)。我怀疑你会遇到性能问题,你通常不会一次对数千个元素进行操作才能有所作为。
-
@Hassan 我用的是普通的。那更好吗?
-
哈哈“Raw Javascript”对我来说听起来有点矛盾,但它对你的问题很有效。
标签: javascript jquery performance