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 ]
Advertisements