javascript去掉空格,回车,制表位及判断空格函数

44259次浏览

记得之前做询价平台的时候,已经在文本框做了非空判断,但是测试人员在输入全交空格之后,居然提交了。为了解决这个问题,我做了去除全交半角空格的判断。时隔几年,我总结一下js的去除空格、回车、制表位的方法!

str = str.replace(/<\/?[^>]*>/g,''); //去除HTML tag
str = str.replace(/[ | ]*\n/g,'\n'); //去除行尾空白
str = str.replace(/\n[\s| | ]*\r/g,'\n'); //去除多余空行
 str=str.replace(/ /ig,'');//去掉 
str=str.replace(/^[\s ]+|[\s ]+$/g, "");//去掉全角半角空格
str=str.replace(/[\r\n]/g,"");//去掉回车换行

上面的方法基本上能去除所有的空格,回车和制表位等等。 但是有时候我们需要去除左右空格,例如在搜索的时候。 去除左右空格方法:

function String.prototype.Trim() { return this.replace(/(^\s*)|(\s*$)/g, ""); }   // 去掉左右空格

function String.prototype.Ltrim() { return this.replace(/(^\s*)/g, ""); }            // 去掉左空格

function String.prototype.Rtrim() { return this.replace(/(\s*$)/g, ""); }            // 去掉右空格

javascript判断是否为空函数:

function isEmpty( val )
{
  switch (typeof(val))
  {
    case 'string':
      return trim(val).length == 0 ? true : false;
      break;
    case 'number':
      return val == 0;
      break;
    case 'object':
      return val == null;
      break;
    case 'array':
      return val.length == 0;
      break;
    default:
      return true;
  }
};

function trim( text )
{
  if (typeof(text) == "string")
  {
    return text.replace(/^\s*|\s*$/g, "");
  }
  else
  {
    return text;
  }
}

第二个trim函数,判断是否是字符串,假如是的话,去掉字符串左右空格,如果不是字符串,原文返回!

Tags: javascriptjs

相关文章:

  1. 666
    1
    typeof 判断不了array吧