Divide a string into n equal parts - JavaScript


We are required to write a JavaScript function that takes in a string and a number n (such that n exactly divides the length of string). We need to return an array of string of length n containing n equal parts of the string.

Let’s write the code for this function −

Example

const str = 'this is a sample string';
const num = 5;
const divideEqual = (str, num) => {
   const len = str.length / num;
   const creds = str.split("").reduce((acc, val) => {
      let { res, currInd } = acc;
      if(!res[currInd] || res[currInd].length < len){
         res[currInd] = (res[currInd] || "") + val;
      }else{
         res[++currInd] = val;
      };
      return { res, currInd };
   }, {
      res: [],
      currInd: 0
   });
   return creds.res;
};
console.log(divideEqual(str, num));

Output

Following is the output in the console −

[ 'this ', 'is a ', 'sampl', 'e str', 'ing' ]

Updated on: 14-Sep-2020

482 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements