【问题标题】:JavaScript: Extract first letter of every string in array?JavaScript:提取数组中每个字符串的第一个字母?
【发布时间】:2018-04-25 11:48:41
【问题描述】:

我是编码新手,所以对大家来说可能是一个简单的问题。 如果我有这个数组并且只想显示它的每个元素的第一个字母,我该怎么办?

var friends = ["John", "Will", "Mike"];

我想用substr 方法来做,但我只想知道如何用字符串来做。

【问题讨论】:

  • 预期输出是什么?
  • 这是一个我会向学习 JavaScript 的人提出的问题,除了该人进行一些研究以找到解决方案外,我会提出这个问题。我给你同样的建议。提示:循环和子字符串

标签: javascript arrays string substr


【解决方案1】:

使用Array.map() 迭代数组,使用destructuring 取第一个字母,然后返回:

const friends = ["John", "Will", "Mike"];
const result = friends.map(([v])=> v);
console.log(result);

【讨论】:

  • 谢谢,但是这些 => 运算符代表什么?
  • ES6 箭头函数
【解决方案2】:

由于其他人都在使用新的花哨的 ECMAScript6,我将提供它的旧版:

var friends = ["John", "Will", "Mike"];

for (var i = 0; i < friends.length; i++) {
  console.log(friends[i][0]);
}

【讨论】:

    【解决方案3】:

    对该数组使用循环并使用charAt(0)访问第一个字符

    var friends = ["John", "Will", "Mike"];
    friends.forEach((name)=>{
      console.log(name.charAt(0));
    });

    charAt() 方法返回一个新字符串,该字符串由位于字符串中指定偏移量的单个 UTF-16 代码单元组成。

    【讨论】:

      【解决方案4】:

      了解Array.prototype.map

      var friends = ["John", "Will", "Mike"];
      console.log(friends.map(v=>v[0]))

      【讨论】:

        【解决方案5】:

        您可以使用.map() 创建首字母数组,例如:

        let firstLetters = friends.map(s => s[0]);
        

        演示:

        let friends = ["John", "Will", "Mike"];
        
        let firstLetters = friends.map(s => s[0]);
        
        console.log(firstLetters);

        您也可以使用 String 的 .charAt() 方法:

        let firstLetters = friends.map(s => s.charAt(0));
        

        演示:

        let friends = ["John", "Will", "Mike"];
        
        let firstLetters = friends.map(s => s.charAt(0));
        
        console.log(firstLetters);

        文档:

        【讨论】:

        • 甜蜜!那么只显示每个元素的最后一个字母呢?是否可以使用相同的 .map 和/或 charAt 方法?
        • @Pepdbm7 是的,只需使用 string.length - 1 作为索引。例如 friends.map(s =&gt; s[s.length - 1]); 或使用 charAt() 像 friends.map(s =&gt; s.charAt(s.length - 1);
        猜你喜欢
        • 2018-06-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-03
        • 1970-01-01
        • 1970-01-01
        • 2022-08-23
        • 2018-07-11
        相关资源
        最近更新 更多