如何获得JavaScript中每个单词的首字母?

时间:2018-09-27 08:04:17

标签: javascript arrays

我需要获取数组中每个单词的首字母,并将这些首字母记录到控制台。

这些词是:

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"];


function getNames(names) {
    // 
}

6 个答案:

答案 0 :(得分:1)

您可以对数组中的每个单词使用charAt(0)。您可以为此使用简单的forEach()循环:

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"];
function getNames(names){
  names.forEach(item => console.log(item.charAt(0)));
}

getNames(names);

如果您不熟悉循环,也可以使用传统的for循环方式:

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"];
function getNames(names){
   for(var i=0; i<names.length; i++){
      console.log(names[i].charAt(0))
   }
}

getNames(names);

  

还请注意,您使用的函数名称和变量名称不能与您用作名称的名称相同,因为它们会冲突。

答案 1 :(得分:1)

您可以使用destructuring assignment来映射第一个字母。

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"],
    result = names.map(([c]) => c);
    
console.log(result);

答案 2 :(得分:0)

使用数组映射:

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"];
var result = names.map(current=>{
    return current[0];
});
console.log(result);

答案 3 :(得分:0)

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"],

result = names.map(name => name[0]);
    
console.log(result);

答案 4 :(得分:-1)

const names = arr => arr.forEach(s => console.log(s[0]));

答案 5 :(得分:-1)

您可以使用for循环对数组进行过滤,然后将第一个字母推到过滤后的数组中,然后将其返回。

var names = ["Vincent", "Charlotte", "Nandi", "Eiske", "Joachim", "Angelo", "Paul", "Chantal", "Olaf", "Inge", "Rogier", "Michael", "Ramon", "Carolien", "Johan", "Bianca", "Rene", "Yulia", "Bram", "Anneloes", "Kirsten", "Roel", "Gökhan", "Annemiek", "Lisette", "Menno", "Rene", "Erik", "Robin", "Frank", "Anton", "Maks", "Rob", "Floor", "Bas", "Rico", "Max", "Bastiaan", "Eugune"]; // Names array


function checkNames(names) {
var f = [];
    for(var i = 0; i < names.length; i++){
    f.push(substring(names[i],0,1));
    }
return f;
}

var result_array = checkNames(names); // Filtered Array that will hold your single letters