將字串轉換為 JavaScript 中的 NATO 音標字母
問題
我們需要編寫一個 JavaScript 函式,它接受一個字串並將其轉換為 NATO 音標字母。
26 個音標字母如下:阿爾法、布拉沃、查理、德爾塔、艾科、福克斯特洛特、高爾夫、酒店、印度、朱麗葉、凱洛、利馬、邁克、十一月、奧斯卡、爸爸、魁北克、羅密歐、塞拉、探戈、統一、維克多、威士忌、X 射線、洋基、祖魯。
示例
以下為程式碼 −
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));
輸出
以下為控制檯輸出 −
Tango Hotel India Sierra India Sierra Sierra India Mike Papa Lima Echo Sierra Tango Romeo India November Golf
廣告