在Javascript中,将文本插入字符串的最简单方法是什么?

时间:2015-01-28 16:45:50

标签: javascript jquery arrays string parsing

我有一个问题,我需要在javascript中获取一个字符串(这是一个查询字符串)并将其转换为另一个查询字符串(以避免冲突)

我的原始字符串是:

fieldA=10&fieldB=10&fieldC=10&fieldD=10&arrayfieldA=100&arrayfieldA=200

我想要一个前缀(在我的情况下它会像“slide [0]。”并把它放在所有项目的前面,所以我最终得到:

slides[0].fieldA=10&slides[0].fieldB=10&slides[0].fieldC=10&slides[0].fieldD=10&slides[0].arrayfieldA=100&slides[0].arrayfieldA=200

在javascript中,将第一个字符串转换为第二个字符串的最简单方法是什么?

我可以用左 *简单查找/“替换()”(.replace(“&”,“& slides [0]”)
*转换为数组,然后吐回到连接的字符串
*其他人?

目前我正在这样做:

 function EnrichString(startString, prefix) {
       return prefix + startString.replace("&", "&" + prefix);
  }

但我想确认这种方法是否有任何问题?

1 个答案:

答案 0 :(得分:1)

var queryStringParts = queryString.split('&');
var pairs = queryStringParts.map(function(str) { return str.split('=') })
var rewrittenParts = pairs.map(function(pair){ 
                          return 'slides[0].'+pair[0]+'='+pair[1] 
                     });
var newQuerystring = rewrittenParts.join('&');
正如评论中指出的那样

编辑,在这个特定情况下,我们可以跳过拆分成对的步骤,然后再做

var queryStringParts = queryString.split('&');
var rewrittenParts = queryStringParts.map(function(part) { 
                          return 'slides[0].'+part 
                     });
var newQuerystring = rewrittenParts.join('&');