我想在 express.js (coffeescript) 中将我的一些方法添加到字符串、int 等泛型类型中。我对节点完全陌生。我只想这样做:
"Hi all !".permalink().myMethod(some).myMethod2();
5.doSomething();
variable.doSomethingElse();
这个怎么做 ?
我想在 express.js (coffeescript) 中将我的一些方法添加到字符串、int 等泛型类型中。我对节点完全陌生。我只想这样做:
"Hi all !".permalink().myMethod(some).myMethod2();
5.doSomething();
variable.doSomethingElse();
这个怎么做 ?
您可以使用以下方法向 String 原型添加方法:
String::permaLink = ->
"http://somebaseurl/archive/#{@}"
String::permalink
是简写String.prototype.permaLink
然后你可以这样做:
somePermalink = "some-post".permaLink()
console.log somePermalink.toUpperCase()
这将调用“this”设置为“some-post”字符串的“String.prototype.permaLink”函数。permaLink 函数然后创建一个新字符串,字符串值“this”(@
在 Coffeescript 中)包含在末尾。Coffeescript 自动返回函数中最后一个表达式的值,因此 permaLink 的返回值是新创建的字符串。
然后,您可以对字符串执行任何其他方法,包括您使用上述技术自己定义的其他方法。在此示例中,我调用了内置 String 方法 toUpperCase。
您可以使用原型通过新函数扩展 String 或 int 对象
String.prototype.myfunc= function () {
return this.replace(/^\s+|\s+$/g, "");
};
var mystring = " hello, world ";
mystring.myfunc();
'hello, world'