Javascript将数组中的所有内容替换为数组中的所有内容

Javascript将数组中的所有内容替换为数组中的所有内容,javascript,Javascript,我有一个带有.gif、.png等的数组。我想分别用@2.gif、@2.png等替换 范例 .gif -> @2.gif .png -> @2.png 我尝试过使用string.replace,但无法使用replace-with指定数组 有任何帮助吗?您可以使用正则表达式替换: str = str.replace(/\.(gif|png)/gi, '@2.$1'); 此外,根据您要替换的具体内容,您可能不需要g标志(该标志指定应替换模式的所有实例,而不仅仅是第一个找到的实例)。只需

我有一个带有.gif、.png等的数组。我想分别用@2.gif、@2.png等替换

范例

.gif -> @2.gif
.png -> @2.png
我尝试过使用string.replace,但无法使用replace-with指定数组


有任何帮助吗?

您可以使用正则表达式替换:

str = str.replace(/\.(gif|png)/gi, '@2.$1');
此外,根据您要替换的具体内容,您可能不需要
g
标志(该标志指定应替换模式的所有实例,而不仅仅是第一个找到的实例)。

只需使用+

喜欢

var='@2'+var

如果要应用于所有元素,请将其放入循环。

for(int i=0;i
var arr=[
for (int i=0;i<MyArray.length;i++)
{
  MyArray[i]="@2"+MyArray[i];
}
“.gif”, “.png” ]; 对于(变量i=0;i
为什么要替换字符串?只需迭代数组并映射值即可

arrayOfImages = arrayOfImages.map(function(val, i) {
     return '@' + i + val;
});

疯狂的选择:

var arr = ["gif", "png", "jpg"];

arr = ("@2" + arr.join("*@2.")).split("*");

注意:只要确保在数组的任何项中使用任何
*
字符,如果要使用它,只需使用另一个不太可能的字符即可。

@NiklasB.:如何使用?(请参见演示。)扩展存储在一个数组中,因此您应该在其上映射一个正则表达式转义函数,并使用
|
@NiklasB进行连接。啊,对不起,这不是我想要解决的问题:P我将添加它。让我找到我的正则表达式转义函数:)
var arr = ["gif", "png", "jpg"];

arr = ("@2" + arr.join("*@2.")).split("*");