如何 return 表示元素字符串长度的数字数组?

How to return an array of numbers that represent lengths of elements string?

如果数组是:['hey'、'you'、'muddy'] 预期输出应为:[3, 3, 5]

这是我目前拥有的:

function lengths(arr) {
  numbersArray = [];
  for (var i = 0; i < arr.length; i++) {
    numbersArray = arr[i].length;
  }
}

如有任何帮助,我们将不胜感激。

const getStringLength = (arr) => {
  return arr.map((item) => item.length);
}
console.log(getStringLength(['hello', 'world']));

您需要将每个项目的 length(使用 Array#push)和 return 数组压入最后:

function lengths(arr) {
  const numbersArray = [];
  for (let i = 0; i < arr.length; i++) {
    numbersArray.push(arr[i].length);
  }
  return numbersArray;
}

console.log( lengths(['hey', 'you', 'muddy']) );

使用Array#map的另一个解决方案:

function lengths(arr) {
 return arr.map(str => str.length);
}

console.log( lengths(['hey', 'you', 'muddy']) );

function lengths(arr) {
  return arr.map(el => el.length)
}

Array.map这种东西常用。 Docs

试试这个。

const arrStrLen =(a)=>a.map((i)=>i.length);

console.log(arrStrLen(['hey', 'you', 'muddy']));

console.log(arrStrLen(['How','to','return']));