在Require.js中,如果require()是一个函数,require.config()是如何存在的?

时间:2015-03-05 17:56:01

标签: javascript function object hash requirejs

这个问题更多地是关于javascript对象如何在一般情况下工作而不是Require.js。

我们说我有一个名为require的函数:

var require = function(){/*cool stuff*/};

require不是javascript对象。它没有名为" config"的密钥。因此require.config的概念对我来说没有意义。

然而在Require.js中,require.config实际上是一个有效的功能。

这怎么可能?

1 个答案:

答案 0 :(得分:1)

RequireJS只定义了一个名为require的函数,然后在其上定义了一个config属性,它具有一个函数值。它的作用非常简略,如:

require = function () {}
require.config = function () {}

这是有效的,因为正如您在问题的评论中已经指出的那样,函数是JavaScript中的对象。