Javascript 如何将此正则表达式替换从替换单个单词更改为替换一个单词数组?

Javascript 如何将此正则表达式替换从替换单个单词更改为替换一个单词数组?,javascript,arrays,regex,replace,Javascript,Arrays,Regex,Replace,我已经搜索过了,但无法根据我的代码调整任何内容。我正试图将var-torerece=“warming”放入一个数组var-torerece=['global',warming'],这样它将用var-newWord替换输入数组中的每个单词,而var-newWord只是将单词包装在一个范围内。谢谢你的帮助 if (temperature > 90) { var input = 'ITS GLOBAL EFFING WARMING'; var toReplace = "WARMI

我已经搜索过了,但无法根据我的代码调整任何内容。我正试图将
var-torerece=“warming”
放入一个数组
var-torerece=['global',warming']
,这样它将用var-newWord替换输入数组中的每个单词,而var-newWord只是将单词包装在一个范围内。谢谢你的帮助

if (temperature > 90) {
    var input = 'ITS GLOBAL EFFING WARMING';
    var toReplace = "WARMING";
    var emphasisColor = 'cyan';
};

var newWord = `<span style="color: ${emphasisColor}">${toReplace}</span>`;
var regEx = new RegExp(toReplace,"g");
var output = input.replace(regEx, newWord);
if(温度>90){
var输入='其全球效应变暖';
var toReplace=“变暖”;
var Emphasis颜色=‘青色’;
};
var newWord=`${toReplace}`;
var regEx=新的RegExp(替换为“g”);
var output=input.replace(regEx,newWord);

通过
|
加入
以交替,以便数组中的任意一个单词都匹配。还要确保使用
i
标志使其不区分大小写

还将
$&
放在替换字符串中以回显匹配的字符串(例如,当匹配
GLOBAL
时,结果是
GLOBAL
,而不是
GLOBAL,warming

var输入='其全球效应变暖';
var toReplace=[“全球”、“变暖”]
var Emphasis颜色=‘青色’;
var regEx=new RegExp(toReplace.join(“|”),“gi”);
var output=input.replace(regEx,`$&`);

console.log(输出);
您可以使用
forEach
为数组中的每个元素执行函数:

if (temperature > 90) {
    var input = "ITS GLOBAL EFFING WARMING";
    var toReplace = ["GLOBAL", "WARMING"];
    var emphasisColor = "cyan";
};
toReplace.forEach((element, index) => {
    regEx = new RegExp(element, "gi");
    input = input.replace(regEx, `<span style="color: ${emphasisColor}">${toReplace[index]}</span>`);
});
if(温度>90){
var input=“其全球效应变暖”;
var toReplace=[“全球”、“变暖”];
var emphasisColor=“青色”;
};
toReplace.forEach((元素,索引)=>{
regEx=新的RegExp(元素“gi”);
input=input.replace(regEx,`${toReplace[index]}`);
});
您还可以使用
for
循环而不是
forEach
来获得相同的结果


快乐编码!:)

@CertainPerformance suggestion更好,而且不需要任何费用