我需要编写一个首字母缩略词函数,该函数可以产生我所输入的值的首字母缩写词。我不能使用循环,但可以使用map,reduce或filter以及join和split。我已经能够获得数组的首字母缩写,但这不是我应该做的。尝试获取值的首字母缩写时,这应该可以工作->首字母缩写(我知道,对吗?),它变成“ ikr”。
您不需要给我代码。我想知道我可以使用的不是使此代码正常工作的循环。
最佳答案
function acronymn( str ) {
return str.split( /\b(?=[a-z])/ig ) // split on word boundaries
.map( token => token[0] ) // get first letter of each token
.join( '' ).toLowerCase() // convert to lowercase string
;
}
acronymn( 'I know, right?' ) === 'ikr' // true