3

可能重复:
检查单词的第一个字母是否为大写字母

我想编写一个函数,在其中将字符串作为参数传递。然后我想知道这个字符串的第一个字母是不是大写。如果是大写,则返回 true,否则返回 false。我怎样才能在javascript中实现这一点?任何简单的demo,后面我会根据需要修改。

4

4 回答 4

4
var myString = "Whatever you want to test"
console.log(myString[0] == myString[0].toUpperCase());
//Returns true

myString = "whatever you want to test"
console.log(myString[0] == myString[0].toUpperCase());
//Returns false

myString[0]不适用于(某处)IE7/IE8 及更低版本,myString.charAt(0)如果您需要脚本与这些浏览器兼容,请使用。

于 2012-12-06T12:59:58.077 回答
4

您可以使用 String.charCodeAt()。此函数返回字符的 unicode 值。大写字母与小写字母的值不同。

检查文档: http ://dochub.io/#javascript/string.charcodeat

function isFirstLetterCapital(string) {
  return string.charCodeAt(0) === string.toUpperCase().charCodeAt(0);
}

编辑:

charAt 实际上更快 - http://jsperf.com/string-operations-order。感谢 Cerbrus 指出这一点。

function isFirstLetterCapital(string) {
  return string.charAt(0) === string.charAt(0).toUpperCase();
}
于 2012-12-06T13:01:05.543 回答
3
if(yourString.match(/^[A-Z]/)) ...
于 2012-12-06T13:01:38.887 回答
1
function isFirstLetterUpperCase(string) {
   var firstLetter = string.charAt(0);
   return firstLetter == firstLetter.toUpperCase();
}
于 2012-12-06T13:00:31.470 回答