44

有一个 Javascript/Jquery 布尔函数来测试一个字符串是否都是大写的?

匹配示例:

"hello" => false
"Hello" => false
"HELLO" => true
4

5 回答 5

105
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
于 2013-07-10T14:11:21.013 回答
31

我必须在这里至少写一句话,因为他们不喜欢这里的简短答案,但这是我能想到的最简单的解决方案:

s.toUpperCase() === s
于 2013-07-10T14:11:45.470 回答
16

这是另一种选择:

function isUpperCase(str) {
  return (/^[^a-z]*$/).test(str);
}
于 2013-07-10T14:12:12.033 回答
4

只需使用:

if(mystring === mystring.toUpperCase())
于 2013-07-10T14:11:27.813 回答
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
于 2013-07-10T14:11:38.137 回答