JavaScript 原生未提供 trim、ltrim 和 rtrim 方法,本文介绍通过正则表达式手动实现这三个功能。提供了两种实现方式:一是扩展 String 原型对象,支持链式调用;二是定义独立函数。代码展示了如何利用 replace 方法配合 /^\s*/ 和 /\s*$/ 正则表达式,高效去除字符串左右及单侧的空格。
JavaScript 去除字符串空格的方法概述
在 VBScript 中,开发者可以便捷地使用 trim、ltrim 或 rtrim 函数来清除字符串两端的空格。然而,JavaScript 原生并未内置这三个方法,因此需要开发者自行实现。以下方案利用正则表达式进行匹配替换,具有较高的执行效率,并将其封装为 String 对象的原型方法,从而可以直接通过实例调用,例如 str.trim()。
扩展 String 原型实现
<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>
独立函数实现方式
若希望以独立函数的形式调用(如 trim(str)),可采用以下代码结构。
<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>