Mã Morse là gì?
Mã Morse là phương pháp dùng trong viễn thông để mã hóa ký tự văn bản thành chuỗi chuẩn hóa của hai độ dài tín hiệu khác nhau, gọi là chấm và gạch.
Để có hàm chuyển chuỗi sang Mã Morse, ta cần object ánh xạ tất cả ký tự (bảng chữ cái Anh) sang Morse. Sau đó duyệt chuỗi và xây dựng chuỗi mới.
Object ánh xạ bảng chữ cái sang Morse:
Bảng mã Morse
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": "--.."
}Hàm chuyển chuỗi sang Morse:
Ví dụ
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!'));Kết quả
Đầu ra trong console sẽ là:
-........-...-..-. --.--..---..--.-.- .....-.-- -......-..!