将变量添加到jQuery $范围是明智的还是污染它



我刚刚看到一些家伙建议使用以下语法,而不是我通常(总是)使用的语法。

$newToMe = "I haven't used this way";
var oldWay = "I've always use this way";

他对原始问题的回答的总体质量表明他知道一些东西,而不仅仅是四处闲逛。尽管如此,在我看来,这样做存在污染jQuery范围的风险。

我谨慎是对的,还是将自己的东西保持在狭窄范围内的好方法?是否应该结合这种粗暴并谨慎地使用类似以下内容的东西?

$myCoolStuff.thing1 = $(".ones");
$myCoolStuff.thing2 = $(".twos");

就"jQuery 范围污染"而言,这两种选择是相同的。 $me只是关于如何命名变量的(许多)约定之一 - 这与区分jQuery对象和常规对象有关。

但是,值得一提的是(给定上面的代码)$newToMe将被添加到全局范围内(并在window中找到),而oldWay不会。为什么?好吧,var关键字将导致它被限制在其当前上下文中。

最新更新