如何减少javascript中数组中的数字

问题描述

数组中有数字,例如 54321

array = ["54321"] ;

现在如何在控制台打印

  1. 54321
  2. 5432
  3. 543
  4. 54
  5. 5

我不想手动打印,我想动态打印..

提前致谢。

解决方法

您可以split将字符串转化为数组并使用reduce函数

ler arr = array[0].split('');

let result = arr.reduce((acc,i) => { 
                           acc.newarr.push(arr.slice(0,acc.counter).join(''));
                           acc.counter--;
                           return acc;
                         },{newarr:[],counter:5});

console.log(result);
,

const array = ["54321"];


const print = ([x]) => {
  if (x.length === 0) return;
  console.log(x);
  print([x.slice(0,-1)]);
}

print(array)

,

const array = ["54321"];

const un_print = ([str]) =>
  Array.from(
    { length: str.length },(_,i) => (i + 1) + '. ' + str.slice(0,str.length - i)
  )
    .forEach((v) => console.log(v));

un_print(array);