如何实现空格替换为“%20”

 

1)直接使用url编码方法, 可把空格转义为"%20"。

function replaceSpace(str)
{
    return encodeURIComponent(str);
}

2)是用正则匹配出来空字符,然后进行替换。(java中存在replaceAll方法,但是js中没有)

function replaceSpace(str)
{
    return str.replace(/\s/g,'%20');
}

3)使用空格分割字符为数组,然后用字符'%20'链接数组为一个字符。

function replaceSpace(str)
{
    var splitArr = str.split(' ');
    return splitArr.join('%20');
}

4) 循环string字符,遇到非undefined并且不为空格,则直接链接到新字符串中,如果是空格,则链接字符“%20”到newStr中。

function replaceSpace(str)
{
    var newStr = '', i, len = str.length;
    for(i=0;i<len;i++) {
        if(str[i] != 'undefined' && str[i] !== ' ') {
            newStr += str[i];
        }else {
            newStr += '%20';
        }
    }
    return newStr;
}

 

posted @ 2018-05-03 20:49  echo2016  阅读(7963)  评论(0编辑  收藏  举报