只是好奇如何继承String对象.(prototypically)

Tod*_*nce 5 javascript subclass

我知道这是不受欢迎的,我只是在探索这个想法,因为我的生活似乎无法按照我想要的方式来完成这项工作.

这个例子应该解释所有:

String.prototype.MyNS = function() {}
String.prototype.MyNS.fooify = function() {
     return this + 'foo!';
 }

var theString = 'Kung';

alert(theString.MyNS.fooify());
Run Code Online (Sandbox Code Playgroud)

当然,这只是将函数定义附加到'foo'...添加this()而不起作用.

我知道我在那里失去了背景,但无法弄清楚如何使原件发射并给我我想要的东西.

Pet*_*son 7

这是你可以做到的一种方式:

String.prototype.MyNS = function() {
    var _this = this;
    return {
        fooify: function() {
            return _this + 'foo!';
        }
    };
}
Run Code Online (Sandbox Code Playgroud)

在jsFiddle中查看它的实际操作

请注意,正如slashingweapon指出的那样,你必须像这样调用它:

String.prototype.MyNS().fooify();
Run Code Online (Sandbox Code Playgroud)

据我所知,没有跨浏览器的方式,无需调用MyNS函数.