所以我写了这个String函数,为句子中的每个单词添加内容
String.prototype.addStuff = function() {
return this.replace(/ /g, "-stuff ") + "-stuff"
}
有人告诉我,有一种方法可以在不使用括号的情况下在字符串上调用此函数。
有人知道吗?
我尝试将函数声明包装在括号中,并在末尾添加一对:
String.prototype.liu = (function() {
return this.replace(/ /g, "-liu ") + "-liu"
})();
但这不起作用:/
最佳答案
您可以使用Object.defineProperty
并提供访问器描述符:
Object.defineProperty(String.prototype, 'liu', {
get: function() {
return this.replace(/ /g, "-liu ") + "-liu"
}
});
"foo".liu
尽管我不知道您为什么要这么做。