用Javascript中设置的字典数组替换字符串中的字母

Sar*_*and 2 javascript arrays loops

我有一个叫做的字符串

"Pizza2Day!"
Run Code Online (Sandbox Code Playgroud)

我想用数组设置替换.在这个数组中,我有原始的字母作为参考

var originalValues = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'];
Run Code Online (Sandbox Code Playgroud)

然后我有加密密钥集

var encryptedValues = ['m', 'h', 't', 'f', 'g', 'k', 'b', 'p', 'j', 'w', 'e', 'r', 'q', 's', 'l', 'n', 'i', 'u', 'o', 'x', 'z', 'y', 'v', 'd', 'c', 'a'];
Run Code Online (Sandbox Code Playgroud)

我想要做的是在普通字母(a,b,c,d)的原始字符串"Pizza2Day"中找到任何出现,并用它们在加密集(m,n,h,f)中的替换替换它们.结果就是"Njaam2Fmc!"

我该怎么做呢?在这种情况下,循环会派上用场吗?

kin*_*ser 10

另一种方法.

var dictionary = { "a": "m", "b": "h", "c": "t", "d": "f", "e": "g", "f": "k", "g": "b", "h": "p", "i": "j", "j": "w", "k": "e", "l": "r", "m": "q", "n": "s", "o": "l", "p": "n", "q": "i", "r": "u", "s": "o", "t": "x", "u": "z", "v": "y", "w": "v", "x": "d", "y": "c", "z": "a", "A": "M", "B": "H", "C": "T", "D": "F", "E": "G", "F": "K", "G": "B", "H": "P", "I": "J", "J": "W", "K": "E", "L": "R", "M": "Q", "N": "S", "O": "L", "P": "N", "Q": "I", "R": "U", "S": "O", "T": "X", "U": "Z", "V": "Y", "W": "V", "X": "D", "Y": "C", "Z": "A" },
    string = "Pizza2Day!",
    result = string.replace(/[a-z]/gi, m => dictionary[m]);
    
    console.log(result);
Run Code Online (Sandbox Code Playgroud)