如何在javascript“for”语句中用“%20”替换空格?

如何在javascript“for”语句中用“%20”替换空格?,javascript,blogger,Javascript,Blogger,我有一个谷歌博客上的脚本。我想在for语句中添加一部分代码,用%20替换空格。我的问题是我无法想象语法。有什么想法吗?谢谢大家! //<![CDATA[ function showLabels(json){ var label = json.feed.category; document.write('<div id="filters" class="portfolioSection">'); document.writ

我有一个谷歌博客上的脚本。我想在for语句中添加一部分代码,用%20替换空格。我的问题是我无法想象语法。有什么想法吗?谢谢大家!

//<![CDATA[

    function showLabels(json){
        var label = json.feed.category;
        document.write('<div id="filters" class="portfolioSection">');
        document.write('<div>');
        document.write('<ul>');

        document.write('<li class="title">LABELS:</li>');
        document.write('<li><a class="current" href="#Blog1" data-filter="*">All</a></li>');
        document.write('<li><a class="no_labels" href="#Blog1" data-filter=".no-labels">no labels</a></li>');

        for (var i = 0; i < label.length; i++){
            document.write('<li><a href="#Blog1" data-filter=".' + label[i].term + '">' + label[i].term + '</a></li>');
        }

        document.write('<span class="show_ico icon-remove"/>');
        document.write('</ul>');
        document.write('</div>');
        document.write('</div>');
    }   

    document.write('<scr' + 'ipt src="' + HomePageUrl + '/feeds/posts/summary?max-results=0&alt=json-in-script&callback=showLabels"><\/scr' + 'ipt>');
//]]>

已编辑:位于标签[i]中的空格。for语句的术语。它包含来自谷歌博客的标签名称。例如,标签可以是测试标签。当有人点击时,With space不起作用,因为url如下所示http://www.sitename.net/search/label/Test 标签我想做的是替换空间,使它看起来像这样http://www.sitename.net/search/label/Test%20Label.

我昨天就这么做了。如果要替换空格,最简单的方法是:

var sentence = "This is a sentence"
sentence.split(" ").join("%20");
为什么不:

string.replace(/ /g, '%20')

编辑以修复。

空间存在的位置?它是在标签[i].term还是HomePageUrl或..中?你能给你看一下i/p和o/p示例吗,对不起,我有点困惑。可能是@AmrElgarhy&Sudhansu Choudhary的重复:我添加了其他信息,请现在查看。这只会取代第一个空格Tom。你说得对,我的错!修正了。@JBux:我怎么能把它放在我的for语句中呢?label[I].term.replace//g,'%20',在你刚才的label[I].term中,有人能解释否决票吗?我没有否决票,但我想人们会这样做,因为这似乎是解决问题的一种非常缓慢的方式。这不是一个错误的答案,只是不是最好的答案。@JBux,他想使用for语句……我想他的意思是他想在他发布的代码中的for语句中找到解决方案。谢谢你的回答,但我如何才能将此放在for语句中?
var str = "";
// label is the string you want to modify
for (var i = 0; i < label.length; i++) {
      if (label.charAt(i) == ' ') {
           str += "%20";
      } else {
           str += label.charAt(i);
      }
}