2013-07-10 36 views
17

有一個Javascript/jquery布爾函數來測試一個字符串是否全部大寫?匹配的如何檢查一個字符串是否在JavaScript中全部大寫?

例如:

"hello" => false 
"Hello" => false 
"HELLO" => true 
+8

不意味着粗魯,但你可以把你的問題的標題,粘貼在谷歌,你會有一個答案 – NicoSantangelo

+1

你應該在發佈前搜索你的標題。這將花費更少的時間比在這裏寫整個問題 – Sachin

+3

如果我谷歌爲''我怎麼才能檢查一個字符串是全部在JavaScript中的大寫?'[我找到這個問題 – Bitterblue

回答

55
function isUpperCase(str) { 
    return str === str.toUpperCase(); 
} 


isUpperCase("hello"); // false 
isUpperCase("Hello"); // false 
isUpperCase("HELLO"); // true 

你也可以增加String.prototype

String.prototype.isUpperCase = function() { 
    return this.valueOf().toUpperCase() === this.valueOf(); 
}; 


"Hello".isUpperCase(); // false 
"HELLO".isUpperCase(); // true 
+6

'isUpperCase(「123」); // true' –

+0

要重申Derek的評論......僅包含數字的字符串將返回true,並不正確地指示所有大寫字母。 – Stuart

+0

@Stuart爲什麼不正確?我猜這裏的問題是,沒有字符的字符串擁有大寫字母的能力在is-uppercase的真實面上是不允許的? – Bitterblue

1

只需使用:

if(mystring === mystring.toUpperCase()) 
1
var test = "HELLO"; 
var upper = test.toUpperCase(); 

return test === upper; // true 

// other example 

var test = "Hello"; 
var upper = test.toUpperCase(); 

return test === upper; // false 
15

我必須在這裏至少寫了一句話,因爲他們不喜歡這裏簡短的回答,但這是我能想到的最簡單的辦法:

s.toUpperCase() === s

+0

+1這兩個句子! – DarkBee

+2

哈哈,有人親自拍下了。對你有好處(我有一個downvote)! – 2013-07-10 14:20:35

+1

我***'愛'***簡答題! – Bitterblue

8

這裏的另一種選擇:

function isUpperCase(str) { 
    return (/^[^a-z]*$/).test(str); 
} 
+7

不錯,但通過將正則表達式更改爲'/^[A-Z] * $ /',它也會丟棄數字和標點符號。 – Konamiman

相關問題