关闭

js去除字符串空格,实现trim()方法

标签: javascriptjqueryweb前端
627人阅读 评论(0) 收藏 举报
分类:

本文章地址:http://blog.csdn.net/csdn_yudong/article/details/52371001
本文由 Never_yu 创作,转载请保留出处。


有时候,我们在一个小项目中,或者demo中,或者改以前的代码的时候,需要用到trim()来去除字符串中的空格,但是为了这么一点东西,去引入jQuery,又心有不甘。所以,只得自己来用JavaScript实现这功能。

jQuery实现去除字符串的空格是如此的简单,这里就不做介绍了,本文主要讲解用原生的JavaScript来实现去除字符串中空格的问题。

var T = {
    //去除字符串左空格
    ltrim : function(s) {
        return s.replace(/^(\s*| *)/,'');
    },
    //去除字符串右空格
    rtrim : function(s) {
        return s.replace(/(\s*| *)$/,'');
    },
    //去除字符串左右空格
    trim : function(s) {
        return this.ltrim(this.rtrim(s));
    },
    //去除字符串中所有空格
    trim_all : function(text) {
        text = text.replace(/^\s+/,'');
        for(var i = text.length-1; i>=0; i--)
        {
            if(/\S/.test(text.charAt(i)))
            {
                text = text.substring(0, i + 1);
                break;
            }
        }
        return text;
    }
};

在这里,我们封装了一个变量T,变量里面有4个方法,分别是去除左空格去除右空格去除两端空格去除所有空格

下面写一个demo演示一下,

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>纯js实现的去除字符串空格</title>
    <script>
        window.onload = function(){
            var T = {
                //去除字符串左空格
                ltrim : function(s) {
                    return s.replace(/^(\s*| *)/,'');
                },
                //去除字符串右空格
                rtrim : function(s) {
                    return s.replace(/(\s*| *)$/,'');
                },
                //去除字符串左右空格
                trim : function(s) {
                    return this.ltrim(this.rtrim(s));
                },
                //去除字符串左右空格
                trim_all : function(text) {
                    text = text.replace(/^\s+/,'');
                    for(var i = text.length-1; i>=0; i--)
                    {
                        if(/\S/.test(text.charAt(i)))
                        {
                            text = text.substring(0, i + 1);
                            break;
                        }
                    }
                    return text;
                }
            };

            var username = document.getElementById('username');
            var ltrim = document.getElementById('ltrim');
            var rtrim = document.getElementById('rtrim');
            var trim = document.getElementById('trim');
            var get = document.getElementById('get');
            ltrim.onclick = function(){
                get.innerText = T.ltrim(username.value);
            }
            rtrim.onclick = function(){
                get.innerText = T.rtrim(username.value);
            }
            trim.onclick = function(){
                get.innerText = T.trim_all(username.value);
            }
        }

    </script>
</head>
<body style="padding: 50px;">
    <input type="text" id="username">
    <button id="ltrim">ltrim</button>
    <button id="rtrim">rtrim</button>
    <button id="trim">trim</button>
    <span id="get" style="background-color: #ccc;"></span>
</body>
</html>

在我们的JavaScript中先写上我们的变量T,那么,我们就有了T里面的四个方法了,分别是去除左空格去除右空格去除两端空格去除所有空格

我们希望去除字符串s的所有空格,那么可以这样写:

T.trim_all(s);

当然,在实际中这个字符串s可能来自于某一个变量,或者获取到的某一个值,如本例中的

get.innerText = T.trim_all(username.value);

把去除掉所有空格后的值赋给get



写在最后:约定优于配置——-软件开发的简约原则.


——————————–(完)————————————–


我的
个人网站:https://neveryu.github.io/guestbook/
Github: https://github.com/Neveryu
新浪微博:http://weibo.com/Neveryu

1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

JavaScript去除字符串两边空格trim

转自:http://www.nowamagic.net/javascript/js_TrimInJavascript.php
  • chelen_jak
  • chelen_jak
  • 2014-06-07 20:57
  • 2437

在JS原型prototype中编写提取整数和移除字符串首尾空白的trim方法

通过给Function.prototype增加方法 Function.prototype.method = function(name,func){ this.prototype[name] = ...
  • Bug_money
  • Bug_money
  • 2017-01-09 22:38
  • 328

[C/C++]_[初级]_[Trim掉字符串的前后空格]

场景 C++ 字符串Trim空格一直不在标准库里, 但是又很常用, 比如在界面输入一些字符串需要过滤掉前后空格后保存到数据库里;又或者需要进行字符串比较时过滤掉前后空格来精确比较都需要用到Trim方法...
  • infoworld
  • infoworld
  • 2016-05-30 10:09
  • 2058

Swift - 去除字符串前后的空白(trim方法)

大多数编程语言都提供了 trim 方法来除去字符串前后多余的空白,Swift 中也提供了类似的方法:trimmingCharacters,这个方法除了可以清除前端或后端多余的空白,还可以清除其他指定的...
  • mo_xiao_mo
  • mo_xiao_mo
  • 2017-04-17 09:51
  • 3732

JavaScript中trim 方法实现

Java中的 String 类有个trim() 可以删除字符串前后的空格字符,jQuery中也有trim()方法可以删除字符变量前后的字符串。但是JavaScript中却没有相应的trim() 方法,...
  • u012260672
  • u012260672
  • 2016-07-16 18:47
  • 1641

js去空格、去重函数

js去除空格函数var str=" 薛 定 谔 的 猫 "; 去除所有空格: str=str.replace(/\s+/g,""); alert(str);-->"薛定谔的猫" 去除两...
  • qq_29306775
  • qq_29306775
  • 2017-04-13 16:01
  • 535

js去除空格12种方法

JS去除空格的方法目前共有12种: 实现1 String.prototype.trim = function() {   return this.replace(/^\s\s*/, '').r...
  • huanghui8030
  • huanghui8030
  • 2013-11-08 09:42
  • 43404

Java初学习 - 取子串,查找串,去空格常用JAVA中去掉空格 1. String.trim() trim()是去掉首尾空格 2.str.replace(" ", ""); 去掉所有的方法说明

JAVA中去掉空格 1. String.trim() trim()是去掉首尾空格 2.str.replace(" ", ""); 去掉所有空格,包括首尾、中间 String str = " he...
  • cnmilan
  • cnmilan
  • 2016-04-14 13:55
  • 1422

Trim()去掉的不仅仅是空格

在实际项目中发现Trim()方法不仅仅是去空格这么简单。因为一个看似简单的空格,就可以影响到整个程序的功能和程序的效率。下面就让我把自己在项目中遇到的一些小问题以及如何解决这些问题的经过拿出来和大家共...
  • ITclody
  • ITclody
  • 2013-06-04 02:15
  • 1072

python 高级特性

1、切片: 取list / tuple L[ ]部分元素-----L[0:3]  从0开始去 到3为止 不包括3                       ...
  • Alinxxl
  • Alinxxl
  • 2018-01-03 21:13
  • 55
    个人资料
    • 访问:138896次
    • 积分:2565
    • 等级:
    • 排名:第16538名
    • 原创:119篇
    • 转载:11篇
    • 译文:0篇
    • 评论:7条
    文章分类
    最新评论