Estoy tratando de reemplazar varias palabras en una cadena con varias otras palabras. La cadena es "Tengo un gato, un perro y una cabra".
Sin embargo, esto no produce "Tengo un perro, una cabra y un gato", sino que produce "Tengo un gato, un gato y un gato". ¿Es posible reemplazar varias cadenas con varias cadenas al mismo tiempo en JavaScript, para que se produzca el resultado correcto?
var str = "I have a cat, a dog, and a goat.";
str = str.replace(/cat/gi, "dog");
str = str.replace(/dog/gi, "goat");
str = str.replace(/goat/gi, "cat");
//this produces "I have a cat, a cat, and a cat"
//but I wanted to produce the string "I have a dog, a goat, and a cat".