将字符串转换为 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
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP