我可以在ES5中编写以下内容:

String.prototype.something=function(){
  return this.split(' ').join('');
};

如何使用新功能在ES6中做同样的事情?

我知道这也是有效的ES6。我想知道在ES6中是否还有其他实现此类功能的方法?
上面的功能只是一个例子。

最佳答案

在ES6中,您也可以使用Object.assign()来做到这一点:

Object.assign(String.prototype, {
    something() {
        return this.split(' ').join();
    }
});

您可以找到有关方法here的更多信息。

或者,您可以使用defineProperty(我认为这会更好):
Object.defineProperty(String.prototype, 'something', {
    value() {
        return this.split(' ').join();
    }
});

参见文档here

查看我的评论以了解何时使用definePropertyObject.assign()

关于javascript - 在ES6中扩展String类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30257915/

10-09 20:26