首页 > 解决方案 > Javascript - 构造一个数组,其中的元素从字符串中重复

问题描述

假设有一个字符串aba和一个限制 5。我如何创建一个数组,其中元素从字符串重复直到达到限制?

例如string = "aba"并且limit = 5会给新的array ["a","b","a","a","b"]

截至目前,我的数组填充了所有字符,然后为左侧索引重复空白字符串。

function repeatedString(s, n) {
  let arr = [];
  for (let i = 0; i < n; i++) {
    let char = s.charAt(i);
    arr.push(char);
  }
  console.log(arr);
}

repeatedString("aba", 5)

标签: javascript

解决方案


您的代码几乎就在那里。当您达到字符串的长度时,您只需要让您使用的索引.charAt()返回 0。这可以使用带有字符串长度的余数运算符( ) 来完成,如下所示:%

function repeatedString(s, n) {
  let arr = [];
  for (let i = 0; i < n; i++) {
    let char = s.charAt(i % s.length);
    arr.push(char);
  }
  console.log(arr);
}

repeatedString("aba", 5)


推荐阅读