javascript - 如何获取我的 JavaScript 数组的所有子字符串(连续子序列)?

标签 javascript arrays substring

我的任务是使用 JavaScript 将给定的数组拆分为更小的数组。例如 [1, 2, 3, 4]应拆分为 [1] [1, 2] [1, 2, 3] [1, 2, 3, 4] [2] [2, 3] [2, 3, 4] [3] [3, 4] [4] .

我正在使用这段代码:

let arr = [1, 2, 3, 4];

for (let i = 1; i <= arr.length; i++) {
  let a = [];
  for (let j = 0; j < arr.length; j++) {
    a.push(arr[j]);
    if (a.length === i) {
      break;
    }
  }
  console.log(a);
}


我得到以下结果:[1] [1, 2] [1, 2, 3] [1, 2, 3, 4] undefined
我错过了什么/做错了什么?

最佳答案

对于内部数组,您可以从外部数组的索引开始。

var array = [1, 2, 3, 4],
    i, j, l = array.length,
    result = [];
    
for (i = 0; i < l; i++) {
    for (j = i; j < l; j++) {
        result.push(array.slice(i, j + 1));
    }
}
console.log(result.map(a => a.join(' ')));
.as-console-wrapper { max-height: 100% !important; top: 0; }

关于javascript - 如何获取我的 JavaScript 数组的所有子字符串(连续子序列)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52363370/

相关文章:

javascript - .get() 不过滤特定的 css 选择器

javascript - 从 firebase 向我的网站显示图像的问题如何解决?

php - 如何减少向数组添加值的时间?

c - C 中指针的奇怪段错误

javascript - 我应该在哪里找到 indexOf 函数是如何为 JavaScript 核心编写的?

javascript - 如何从字符串中删除最后一个 '[]'?

string - 从值字符串中获取值

javascript - 使用 JavaScript 链接两个自动更新(根据另一个中的输入)数字输入字段

javascript - 如何使用 PHP 在网站中添加 Instagram feed?

c - 结构不取值