1.直接使用字符串的trim方法
let str = " 123 ";
str=str.trim(); // 123
2.可以使用jquery的jQuery.trim()函数
描述: 去掉字符串起始和结尾的空格。
$.trim(" hello, how are you? ");
//"hello, how are you?"
3.可以用正则表达式来实现,参考《超实用的JavaScript代码段》具体例子如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>表单常用代码</title>
</head>
<body>
<h2>测试去除字符串左右两边的空格</h2>
<input type="text" id="strs" value=''>
<input type="button" id="rstrsBtn" value="过滤" >
<script type="text/javascript">
window.onload = function(){
var _rstrsBtn = document.getElementById("rstrsBtn"),_strs=document.getElementById("strs");
_rstrsBtn.onclick = function(){
_strs.value = _strs.value.replace(/^(\s|\u00A0)+|(\s|\u00A0)+$/g,"");
};
}
</script>
</body>
</html>
去除字符串左右空格的关键代码如下:
_rstrsBtn.onclick = function(){
_strs.value = _strs.value.replace(/^(\s|\u00A0)+|(\s|\u00A0)+$/g,"");
};
其中replace()是javascript中的原生函数,此处使用replace()替换一个与正则表达式匹配的子串,性能相对比较优越。正则“/^(\s|\u00A0)+|(\s|\u00A0)+$/g”是关键部分,“\s”用来匹配任何空白字符。
本例子中当点击过滤按钮时,会将输入框中左右两边的空格去掉再重新赋值给输入框,效果如下:
按了“过滤”按钮后会执行相应的javascript代码,效果如下: