<分区>
我一直在思考 jQuery 在 Javascript 代码中的实现方式。 jQuery 和 Prototype 等库默认绑定(bind)到一个别名;对于这些示例,他们使用美元符号 $
。 (下划线适本地使用下划线字符 _
。)
我明白这是怎么回事。我还了解到许多库提供了 noConflict 模式。
我的问题是,为什么这些库默认使用别名?
据我所知,像这样的别名似乎只能让程序员在调用函数时输入更少的字符,这似乎微不足道。 (老实说 - 我有点偏见,因为我没有输入长变量名的问题。)我认为这可能是为了文件大小的目的,但随着 minifiers 的激增,这似乎是一个有争议的问题(以及一种过早优化的形式)。
另一方面,别名似乎是cause a lot of confusion for people using these libraries .
现在,我并不是真正反对使用别名——我只是想知道为什么它是这些库的默认选项。目前,为了避免使用别名,我们必须明确声明我们不想使用它。使用别名进行库调用是否有我遗漏的特定好处?我很容易想到的唯一优势是,如果您以某种方式编写跨库代码——要交换库,您只需交换别名即可。不过,我认为我从未见过这样做。
有人知道这背后的原因吗?就我而言,我真的很想知道。