0

有没有办法:

foo()      // return string "foo"
foo.bar()  // return string "bar"

?

我试图尝试函数和对象。但是什么也没发生。

4

2 回答 2

2
function foo() {
   return "foo";
}
foo.bar = function() {
   return "bar";
};

或者,如果您愿意:

var foo = function() {
    return "foo";
};
foo.bar = function() {
    return "bar";
}

JS 函数是一种对象,因此您可以像为任何其他对象一样为它们分配属性/方法。

于 2013-06-05T12:01:01.517 回答
0

您可以调用一个函数或一个名为的类foo,但据我所知,您不能同时拥有这两者。如我错了请纠正我。无论如何,你为什么想要一个具有相同方式的类和一个函数?我假设这就是您想要的,因为您的帖子中几乎没有信息

要定义一个函数,请使用这个

function foo() {
    console.log("foo");
}

并像在你的例子中那样称呼它。

要定义一个类,请这样做(这里有一些其他方法)。

var foo = {
    bar: function() {
        console.log("bar");
    }
}

再一次,像你在你的例子中那样称呼它。

于 2013-06-05T12:10:49.170 回答