将数组中的所有相同值替换为其他相同值。
"Replace all same values in array with other same values"问题的出现原因是数组中存在相同的元素值,并且需要将这些相同的值替换为另一个相同的值。
解决方法是使用forEach循环遍历数组,然后使用条件判断,如果元素的值等于"John",则将该元素的值替换为"Margaret"。最后打印出替换后的数组。
以下是完整的解决方案代码:
const array = ["John", "John", "Herald", "John"]; array.forEach((element, index) => { if(element === 'John') { array[index] = 'Margaret'; } }); console.log(array); // ["Margaret", "Margaret", "Herald", "Margaret"]
问题的出现原因:数组中存在相同的值,需要将所有相同的值替换为其他相同的值。
解决方法:
使用map()方法创建一个新的数组,该数组包含调用提供的函数对调用数组中的每个元素进行操作的结果。
代码示例:
const array1 = ["John", "John", "Herald", "John"]; // 传递一个函数给map const map1 = array1.map(el => el === 'John' ? 'Margaret' : el); console.log(map1); // 期望输出:Array ["Margaret", "Margaret", "Herald", "Margaret"]
以上代码中,通过map()方法遍历数组array1,并通过提供的函数判断元素是否为"John",如果是则替换为"Margaret",否则保持原值。最终输出新的数组map1,其中所有相同的值都被替换为其他相同的值。