可能重複:
Check if first letter of word is a capital letter找到字符串的第一個字母是大寫還是不
我想寫在我傳遞字符串作爲自變量的函數。然後我想知道這個字符串的第一個字母是否大寫。如果是大寫,則返回true,否則返回false。我怎樣才能在JavaScript中實現這一點?任何簡單的演示,我會稍後根據我的需要進行修改。
可能重複:
Check if first letter of word is a capital letter找到字符串的第一個字母是大寫還是不
我想寫在我傳遞字符串作爲自變量的函數。然後我想知道這個字符串的第一個字母是否大寫。如果是大寫,則返回true,否則返回false。我怎樣才能在JavaScript中實現這一點?任何簡單的演示,我會稍後根據我的需要進行修改。
您可以使用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();
}
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)
如果你需要的腳本是與瀏覽器兼容。
function isFirstLetterUpperCase(string) {
var firstLetter = string.charAt(0);
return firstLetter == firstLetter.toUpperCase();
}
if(yourString.match(/^[A-Z]/)) ...
那麼你嘗試過什麼? – Sirko
您是否要求檢查第一個*字符*是否是一個字母並且是大寫字母,還是隻是字符串的第一個字母是大寫?這是兩回事。鑑於你的問題,下面的字符串應該返回true'「... 123Abc」' –