firebase-admin 节点 sdk:为什么 admin.database 既是函数又是 属性?

firebase-admin node sdk: Why admin.database is both a function and property?

在 firebase-admin 中 sdk 有谁知道 how/why admin.database 可以作为函数 admin.database() 和 property/namespace 调用,即 admin.database.ServerValue?

在 JavaScript 中,函数可以有属性。

> function x() {}
undefined
> x
[Function: x]
> x.prop = 1
1
> x
{ [Function: x] prop: 1 }
>

感谢 Doug Stevenson 在 firebase slack 频道上向我指出了这一点。谢谢道格!