function lengthOfLongestSubString (str) {
const occ = new Set();
const n = str.length;
let rk = -1;
let ans = 0;
for(let i = 0; i < n ; i ++ ) {
if (i !== 0 ) {
occ.delete(str.charAt(i - 1))
}
while( rk + 1 < n && !occ.has(str.charAt(rk + 1))) {
occ.add(str.charAt(rk+1))
++rk;
}
ans = Math.max(ans, rk - i + 1);
}
return ans;
}
console.log(lengthOfLongestSubString('abcbcefd'))