我的要求是获得名字的缩写,
Name = FirstName LastName
Initials = FL
我可以用这个获得以上结果,
var initials = item.FirstName.charAt(0).toUpperCase() +
item.LastName.charAt(0).toUpperCase();
但是现在我的要求发生了变化,好像名称只包含1个单词或更多,然后是2个单词,因此在以下情况下,如何根据我的要求获取缩写,
FullName = FU
FirstName MiddleName LastName = FL
1stName 2ndName 3rdName 4thName 5thName = 15
如何从JS中的字符串获取初始信息?
现在我也只有item.Name字符串进来了...
最佳答案
为什么不喜欢正则表达式?
var name = 'Foo Bar 1Name too Long';
var initials = name.match(/\b\w/g) || [];
initials = ((initials.shift() || '') + (initials.pop() || '')).toUpperCase();
console.log(initials);