Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi và chuyển nó thành bảng chữ cái phiên âm NATO.
26 từ mã như sau:Alfa, Bravo, Charlie, Delta, Echo, Foxtrot, Golf, Hotel, India, Juliett, Kilo, Lima, Mike, November, Oscar, Papa, Quebec, Romeo, Sierra, Tango, Uniform, Victor, Whisky, X-ray, Yankee, Zulu.
Ví dụ
Sau đây là mã -
const str = 'this is simple string';
const convertToNato = (str = '') => {
let nato = {
a: 'Alfa',
b: 'Bravo',
c: 'Charlie',
d: 'Delta',
e: 'Echo',
f: 'Foxtrot',
g: 'Golf',
h: 'Hotel',
i: 'India',
j: 'Juliett',
k: 'Kilo',
l: 'Lima',
m: 'Mike',
n: 'November',
o: 'Oscar',
p: 'Papa',
q: 'Quebec',
r: 'Romeo',
s: 'Sierra',
t: 'Tango',
u: 'Uniform',
v: 'Victor',
w: 'Whiskey',
x: 'Xray',
y: 'Yankee',
z: 'Zulu'
}
let arr = [...str];
return arr
.filter((letter) => letter !== " ")
.map((letter) => {
if( /[^a-z]/.test(letter.toLowerCase()) ) { return letter }
else { return nato[letter.toLowerCase()]; }
}).join(' ');
};
console.log(convertToNato(str)); Đầu ra
Sau đây là đầu ra của bảng điều khiển -
Tango Hotel India Sierra India Sierra Sierra India Mike Papa Lima Echo Sierra Tango Romeo India November Golf