1

假设我有一个这样的数组:

['test\\test1\\test2\\myfile.html', 'test\\test1\\test2\\myfile2.html']

我只想用“/”替换所有“\ \”字符并将其存储到一个新数组中,以便新数组应如下所示:

['test/test1/test2/myfile.html', 'test/test1/test2/myfile2.html']

我怎么能这样做呢?

4

4 回答 4

3

您可以使用Array 的map函数来创建一个新的 Array

var replaced = ['test\\test1\\test2\\myfile.html', 'test\\test1\\test2\\myfile2.html'].map(function(v) {
  return v.replace(/\\/g, '/');
});

console.log(replaced);
于 2013-11-01T03:50:55.270 回答
2

既然你提到了 node.js,你可以只使用.map

var replaced = ['test\\test1\\test2\\myfile.html', 'test\\test1\\test2\\myfile2.html'].map(function (x) {
  return x.replace(/\\/g, '/');
});
于 2013-11-01T03:50:06.253 回答
0

首先,您必须使用任何迭代方法遍历数组。

这将帮助您:

在JavaScript中的数组上的for-each?

我认为您可以使用 String 对象的替换功能。

如需更多参考,请访问:

http://www.w3schools.com/jsref/jsref_replace.asp

希望有帮助

于 2013-11-01T03:32:09.083 回答
0
var test = ['test\\test1\\test2\\myfile.html', 'test\\test1\\test2\\myfile2.html'];
    for(var i=0;i<test.length;i++) {
    test[i] = test[i].replace(/\\/g,'/');
}
console.log(test);

输出 ["test/test1/test2/myfile.html", "test/test1/test2/myfile2.html"]

于 2013-11-01T03:33:22.590 回答