在JavaScript中我们需要用到trim的地方很多,但是JavaScript又没有独立的trim函数或者方法可以使用,所以我们需要自己写个trim函数来实现我们的目的。
方案一:
以原型方式调用,即obj.trim()形式,此方式简单且使用方面广泛,定义方式如下:
<script language=”javascript”>
/**
* 删除左右两端的空格
*/
String.prototype.trim=function()
{
return this.replace(/(^/s*)|(/s*$)/g, ”);
}
/**
* 删除左边的空格
*/
String.prototype.ltrim=function()
{
return this.replace(/(^/s*)/g,”);
}
/**
* 删除右边的空格
*/
String.prototype.rtrim=function()
{
return this.replace(/(/s*$)/g,”);
}
</script>
使用示例如下:
<script type=”text/javascript”>
alert(document.getElementById('abc').value.trim());
alert(document.getElementById('abc').value.ltrim());
alert(document.getElementById('abc').value.rtrim());
</script>
方案二:
以工具方式调用,即trim(obj)的形式,此方式可以用于特殊处理需要,定义方式如下:
<script type=”text/javascript”>
/**
* 删除左右两端的空格
*/
function trim(str)
{
return str.replace(/(^/s*)|(/s*$)/g, ”);
}
/**
* 删除左边的空格
*/
function ltrim(str)
{
return str.replace(/(^/s*)/g,”);
}
/**
* 删除右边的空格
*/
function rtrim(str)
{
return str.replace(/(/s*$)/g,”);
}
</script>
使用示例如下:
<script type=”text/javascript”>
alert(trim(document.getElementById('abc').value));
alert(ltrim(document.getElementById('abc').value));
alert(rtrim(document.getElementById('abc').value));
</script>