AngularJS中的JavaScript变量声明

时间:2014-04-23 16:14:43

标签: javascript angularjs

我正在仔细阅读AngularJS源代码并且无法提供帮助,但请注意以下事项:

_angular          = window.angular,
/** @name angular */
angular           = window.angular || (window.angular = {}),

这条线对我来说很有意义:

angular           = window.angular || (window.angular = {}),

"在窗口中使用已定义的角度(来自之前的包含?),或者将window.angular指定给空对象并将角度局部变量设置为window.angular。"

有些问题:

  1. 为什么window.angular已经被定义了(除了明显的某个人已经包含它的情况),为什么我们会关心呢?
  2. 为什么分配_angular和angular?

1 个答案:

答案 0 :(得分:3)

在GitHub上查看提交历史记录,这适用于noConflict模式,在这种情况下,您对要保留的名为angular的变量有一个旧引用。

这是commit that added _angular in

然后删除了该功能in this commit,此时_angular引用是多余的。

我会提出关于GH的问题或很快提出拉取请求。更新 - 制作公关。