js 去除字符串里的空字符串(也可以去除其他字符串)

Posted 菜大师写代码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 去除字符串里的空字符串(也可以去除其他字符串)相关的知识,希望对你有一定的参考价值。

简单粗暴法:

// 简单粗暴法
        var str = " d   s  f      d    s f   d   s f"
        // 定义一个新的变量
        var newStr = "";
        for (var i = 0; i < str.length; i++) 
            // 如果原来通过索引值来判断是不是空的字符串
            if (str[i] != " ") 
                // 如果不是空的字符串添加到新的变量中
                newStr += str[i];
            
        ;
        console.log(newStr);

固定长度法 1 :

var str = " d   s  f      d    s f   d   s f"
        // 通过slth变量得到原来字符串str的长度
        var slth = str.length;
        // i小于固定的长度就不用担心每次str的长度改变而去思考怎么控制空字符串全部删除
        for (var i = 0; i < slth; i++) 
            // includes 功能:检索字符串,如果在字符串的中找到了给定的字符则返回`true`;否则返回`false`。
            // includes 通过检索原来str里面是否有空字符串,如果有返回true,如果没有返回false
            if (str.includes(" ")) 
                // replace 功能:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的字符串。
                str = str.replace(" ", "")
            
        
        console.log(str);

固定长度法  2 :

var str = " d   s  f      d    s f   d   s f"
        // 通过slth变量得到原来字符串str的长度
        var slth = str.length;
        for (var i = 0; i < slth; i++) 
            // indexOf 功能:检索字符串,返回指定子字符串在字符串中首次出现的位置。
            //         注意:indexOf() 方法对大小写敏感!
            //         注意:如果要检索的字符串值没有出现,则该方法返回 -1。
            // 这里的 indexOf 通过判断原来的字符串str首次出现的索引值是不是为-1,因为当为-1是就代表字符串str就没有了空字符串。如果有空字符串执行判断语句。
            if (str.indexOf(" ") != -1) 
                // replace 功能:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的字符串。
                str = str.replace(" ", "")
            
        

固定循环条件 i 法 1 :

var str = " d   s  f      d    s f   d   s f"
        for (var i = 0; i < str.length; i++) 
            // includes 功能:检索字符串,如果在字符串的中找到了给定的字符则返回`true`;否则返回`false`。
            // 这里的 includes 通过检索原来str里面是否有空字符串,如果有返回true,如果没有返回false
            if (str.includes(" ")) 
                // replace 功能:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的字符串。
                str = str.replace(" ", "")
                // 这里的i--是每次去除空字符串的时候,原来的str的长的是会改变的,不确定的话可以通过控制台输出str的长度。
                // 每次去除了空字符串让原来的i在循环里的值不变,直至去除全部字符串,才让自己自增。
                i--
            
        
        console.log(str);

固定循环条件 i 法 2 :

var str = " d   s  f      d    s f   d   s f"
        for (var i = 0; i < str.length; i++) 
            // indexOf 功能:检索字符串,返回指定子字符串在字符串中首次出现的位置。
            //         注意:indexOf() 方法对大小写敏感!
            //         注意:如果要检索的字符串值没有出现,则该方法返回 -1。
            // 这里的 indexOf 通过判断原来的字符串str首次出现的索引值是不是为-1,因为当为-1是就代表字符串str就没有了空字符串。如果有空字符串执行判断语句。
            if (str.indexOf(" ") != -1) 
                // replace 功能:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的字符串。
                str = str.replace(" ", "")
                // 这里的i--是每次去除空字符串的时候,原来的str的长的是会改变的,不确定的话可以通过控制台输出str的长度。
                // 每次去除了空字符串让原来的i在循环里的值不变,直至去除全部字符串,才让自己自增。
                i--
            
        
        console.log(str);

进阶法 1 :

var str = " d   s  f      d    s f   d   s f "
        // indexOf 功能:检索字符串,返回指定子字符串在字符串中首次出现的位置。
        //         注意:indexOf() 方法对大小写敏感!
        //         注意:如果要检索的字符串值没有出现,则该方法返回 -1。
        // 这里的 indexOf 通过判断原来的字符串str首次出现的索引值是不是为-1,因为当为-1是就代表字符串str就没有了空字符串。如果有空字符串执行while循环语句。
        while (str.indexOf(" ") != -1) 
            // replace 功能:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的字符串。
            str = str.replace(" ", "")
        
        console.log(str);

进阶法 2 :

var str = " d   s  f      d    s f   d   s f"
        // includes 功能:检索字符串,如果在字符串的中找到了给定的字符则返回`true`;否则返回`false`。
        // 这里的 includes 通过检索原来str里面是否有空字符串,如果有返回true,如果没有返回false
        while (str.includes(" ")) 
            // replace 功能:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的字符串。
            str = str.replace(" ", "")
        
        console.log(str);

一句话法 1(建议萌新不要使用):

var str = " d   s  f      d    s f   d   s f"
        // replaceAll 功能: 在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串,该函数会替换所有匹配到的子字符串。
        console.log(str.replaceAll(" ",""));

一句话法 2(建议萌新不要使用)正则表达式:

var str = " d   s  f      d    s f   d   s f";
        // /\\s/  表示空格,g表示全局
        console.log(str.replace(/\\s/g,""));

以上是关于js 去除字符串里的空字符串(也可以去除其他字符串)的主要内容,如果未能解决你的问题,请参考以下文章

JS去除字符串众的反斜杠

js 过滤所有空字符串

JS中如何去除字符串的空格

JS去除字符串前后空格的几种方法

javascript去除字符串里面的小括号

去除数组里面值为空或者为空字符串的元素