-

把字符串转换为大写形式

问题

你想把字符串转换成大写形式。

解决方案

使用JavaScript的String的toUpperCase()方法:

"one two three".toUpperCase()
# => 'ONE TWO THREE'

讨论

toUpperCase()是一个标准的JavaScript方法。不要忘了带圆括号。

语法块

通过下面的快捷方式可以添加某种类似Ruby的语法块:

String::upcase = -> @toUpperCase()
"one two three".upcase()
# => 'ONE TWO THREE'

上面的代码演示了CoffeeScript的两个特性:

  • 双冒号::是引用.prototype的快捷方式;
  • “at”字符@是引用this的快捷方式。

上面的代码会编译成如下JavaScript代码:

String.prototype.upcase = function() {
  return this.toUpperCase();
};
"one two three".upcase();

提示 尽管上面的用法在类似Ruby的语言中很常见,但在JavaScript中对本地对象的扩展经常被视为不好的。(请看:Maintainable JavaScript: Don’t modify objects you don’t own;Extending built-in native objects. Evil or not?