如何遍历数组以获取每个字符串的第一个字符

时间:2019-07-25 20:29:35

标签: javascript

我正在提取单词的第一个字母以形成首字母缩写词。我有一个数组来存储所有大写字母的单词,我需要做的就是获取那些大写字母。

我使用数组reduce()方法获取大写字母。但是,我想获得由不同大小写字母组成的所有首字母缩写词。

var words = ["In", "American", "Broadcast", "Company"];

var output = words.reduce((acronym, word) => {
  acronym += word.charAt(0);
  return acronym;
}, "");

这将产生一个输出IABC,但是我们知道正确的缩写是ABC,所以我想我们可以在迭代中获得C, BC, ABC, IABC,然后获得正确的缩写{{ 1}}?

1 个答案:

答案 0 :(得分:0)

要获得预期结果,请使用以下反转数组选项,并使用带有未移位数组的reduce方法

  1. 使用.reverse()的反向数组
  2. 使用reduce并在每个迭代的开始处添加第一个字符来循环
  3. 加入每次迭代并推送到结果数组

工作代码示例以供参考

var words = ["In", "American", "Broadcast", "Company"];
var result = []

var output = words.reverse().reduce((acronym, word, i) => {
  acronym.unshift(word.charAt(0))
  result.push(acronym.join(""))
  return acronym;
}, []);

console.log("result", result);

codepen-https://codepen.io/nagasai/pen/voXXYO?editors=1010