我的JS代码中有一个收集用户输入的文本框。我想过滤垃圾输入,就像只包含空格的字符串一样。
在C#中,我将使用以下代码:
if (inputString.Trim() == "") Console.WriteLine("white junk");
else Console.WriteLine("Valid input");
你有什么建议,如何在JavaScript中做同样的事情?
答案 0 :(得分:16)
字符串上的trim()
方法确实存在于ECMAScript第五版标准中,并已由Mozilla(Firefox 3.5和相关浏览器)实现。
在其他浏览器赶上之前,您可以像这样修复它们:
if (!('trim' in String.prototype)) {
String.prototype.trim= function() {
return this.replace(/^\s+/, '').replace(/\s+$/, '');
};
}
然后:
if (inputString.trim()==='')
alert('white junk');
答案 1 :(得分:11)
使用正则表达式:
if (inputString.match(/^\s*$/)) { alert("not ok"); }
甚至更容易:
if (inputString.match(/\S/)) { alert("ok"); }
\ S表示'任何非空白字符'。
答案 2 :(得分:2)
或者,/^\s*$/.test(inputString)
答案 3 :(得分:1)
function trim (myString)
{
return myString.replace(/^\s+/,'').replace(/\s+$/,'')
}
像这样使用它: if(trim(myString)==“”)