首页 > 解决方案 > 试图对字符串数组求和

问题描述

有一个引号(quotes)数组,需要找到一个特定人的引号(name)的平均长度。

我可以找到值,但不知道如何获得返回值的总和

let averageQuoteLength = (name) => {
   i = crewMembers.indexOf(name)
   a=(-1);
   while (a  <= quotes[i].length) {
     a++
     console.log(quotes[i][a].length)
 }
}

标签: javascript

解决方案


假设您或多或少有一个二维数组,例如:

var quotes = [
  ['quote1', 'quote2', 'quote3'],
  ['quote1', 'quote2', 'quote3'],
  ['quote1', 'quote2', 'quote3']
]

和一些在相应索引处具有所有名称的 crampMembers 数组

试试这个:

let averageQuoteLength = (name) => {
  let i = crewMembers.indexOf(name);
  return (quotes[i].reduce((acc, val) => acc += val.length, 0) / quotes[i].length);
};

数组reduce方法在quotes[i]处将数组中所有引号的所有长度相加,然后我除以数组的长度以获得平均引号长度。Reduce 是一个值得学习的有用工具。


推荐阅读