Construct Array from String Unique Characters in JavaScript



We are required to write a JavaScript function that takes in a string and starts mapping its characters from 0.

And every time, the function encounters a unique (non-duplicate) character it should increase the mapping count by 1 otherwise it should map the same number for duplicate characters.

For example: If the string is −

const str = 'heeeyyyy';

Then the output should be −

const output = [0, 1, 1, 1, 2, 2, 2, 2];

Therefore, let’s write the code for this function −

Example

The code for this will be −

const str = 'heeeyyyy'; const mapString = str => {    const res = [];    let curr = '', count = -1;    for(let i = 0; i < str.length; i++){       if(str[i] === curr){          res.push(count);       }else{          count++;          res.push(count);          curr = str[i];       };    };    return res; }; console.log(mapString(str));

Output

The output in the console will be −

[    0, 1, 1, 1,    2, 2, 2, 2 ]
Updated on: 2020-10-19T10:43:20+05:30

128 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements
close