我看到了这个 线,但我没有看到JavaScript特定的例子。有一个简单的 string.Empty
可以在JavaScript中使用,或者仅仅是检查的情况 ""
?
我看到了这个 线,但我没有看到JavaScript特定的例子。有一个简单的 string.Empty
可以在JavaScript中使用,或者仅仅是检查的情况 ""
?
如果你只想检查是否有任何价值,你可以这样做
if (strValue) {
//do something
}
如果你需要专门检查空字符串是否为空,我会考虑检查 ""
使用是你最好的选择 该 ===
操作者 (所以你知道它实际上是你正在比较的字符串)。
if (strValue === "") {
//...
}
为了检查字符串是否为空,null或未定义,我使用:
function isEmpty(str) {
return (!str || 0 === str.length);
}
为了检查字符串是否为空,null或未定义,我使用:
function isBlank(str) {
return (!str || /^\s*$/.test(str));
}
用于检查字符串是空白还是仅包含空格:
String.prototype.isEmpty = function() {
return (this.length === 0 || !this.trim());
};
以上所有都很好,但这会更好。使用 !!
(不是这样的)运营商。
if(!!str){
some code here;
}
或使用类型铸造:
if(Boolean(str)){
codes here;
}
两者都做同样的功能,输入变量为boolean,where str
是一个变量。
返回 false
对于 null,undefined,0,000,"",false
。
返回 true
对于字符串“0”和空格“”。
如果你需要确保字符串不只是一堆空格(我假设这是用于表单验证),你需要对空格进行替换。
if(str.replace(/\s/g,"") == ""){
}
你可以得到str.Empty最接近的事情(str的前提条件是String)是:
if (!str.length) { ...
我用 :
function empty(e) {
switch (e) {
case "":
case 0:
case "0":
case null:
case false:
case typeof this == "undefined":
return true;
default:
return false;
}
}
empty(null) // true
empty(0) // true
empty(7) // false
empty("") // true
empty((function() {
return ""
})) // false
var s; // undefined
var s = ""; // ""
s.length // 0
JavaScript中没有任何代表空字符串的内容。对任何一个进行检查 length
(如果你知道var将永远是一个字符串)或反对 ""
尝试:
if (str && str.trim().length) {
//...
}
我不会过分担心 高效 方法。使用你的意图最明确的。通常对我来说 strVar == ""
。
编辑:每条评论来自 康斯坦丁,如果strVar可能会最终包含一个整数0值,那么这确实是那些意图澄清情况之一。
功能:
function Is_Empty_or_Undefined (MyVar){ return (
(typeof MyVar== 'undefined')
||
(MyVar == null)
||
(MyVar == false) //!MyVariable
||
(MyVar.length == 0)
||
(MyVar == "")
||
(MyVar.replace(/\s/g,"") == "")
||
(!/[^\s]/.test(MyVar))
||
(/^\s*$/.test(MyVar))
);
}
你也可以使用正则表达式:
if((/^\s*$/).test(str)) { }
检查空白或填充空格的字符串。