在 JavaScript 中將字串轉換為莫爾斯電碼


什麼是莫爾斯電碼?

莫爾斯電碼是一種在電信中用於將文字字元編碼為標準化、時長不同的兩個訊號序列(稱為點和劃線)的方法。

要獲得一個將特定字串轉換為莫爾斯電碼的函式,我們需要一個物件,該物件將所有字元(英文字母)對映到莫爾斯電碼等價項。有了它,我們只需遍歷字串並構造一個新字串。

以下是將字母對映到莫爾斯電碼的物件 −

莫爾斯電碼對映

const morseCode = {
   "A": ".-",
   "B": "-...",
   "C": "-.-.",
   "D": "-..",
   "E": ".",
   "F": "..-.",
   "G": "--.",
   "H": "....",
   "I": "..",
   "J": ".---",
   "K": "-.-",
   "L": ".-..",
   "M": "--",
   "N": "-.",
   "O": "---",
   "P": ".--.",
   "Q": "--.-",
   "R": ".-.",
   "S": "...",
   "T": "-",
   "U": "..-",
   "W": ".--",
   "X": "-..-",
   "Y": "-.--",
   "Z": "--.."
}

現在將字串轉換為莫爾斯電碼的函式將是 −

示例

const morseCode = {
   "A": ".-",
   "B": "-...",
   "C": "-.-.",
   "D": "-..",
   "E": ".",
   "F": "..-.",
   "G": "--.",
   "H": "....",
   "I": "..",
   "J": ".---",
   "K": "-.-",
   "L": ".-..",
   "M": "--",
   "N": "-.",
   "O": "---",
   "P": ".--.",
   "Q": "--.-",
   "R": ".-.",
   "S": "...",
   "T": "-",
   "U": "..-",
   "W": ".--",
   "X": "-..-",
   "Y": "-.--",
   "Z": "--.."
}
const convertToMorse = (str) => {
   return str.toUpperCase().split("").map(el => {
      return morseCode[el] ? morseCode[el] : el;
   }).join("");
};
console.log(convertToMorse('Disaster management'));
console.log(convertToMorse('hey there!'));

輸出

控制檯中的輸出將是 −

-........-...-..-. --.--..---..--.-.-
.....-.-- -......-..!

更新日期: 24-8-2020

3 千次瀏覽

開始您的 職業生涯

完成課程獲得認證

開始
廣告
© . All rights reserved.