Вы также можете сделать:
if (!str || !str.replace(/ /g, "")) {
// str is either empty, null, undefined or has nothing in it other than spaces
}
Это также защищает Вас, если str
является null
или undefined
тоже.
Вот демо с помощью тестовых ор в:
var testStrings = ["", " ", " 1 ", " s "];
testStrings.forEach(function(str) {
var result = false;
if (!str || !str.replace(/ /g, "")) {
// str is either empty, null, undefined or has nothing in it other than spaces
result = true;
}
log('"' + str + '"' + " tests as " + result + "<br>");
});
function log(x) {
var r = document.getElementById("results");
var div = document.createElement("div");
div.innerHTML = x;
r.appendChild(div);
}
<pre id="results"></pre>
Какой код вы пробовали? –
@AdamKonieska '/^\ s *? $ /' – stack