给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。

    1. /**
    2. * @param {string} s
    3. * @return {number}
    4. */
    5. var firstUniqChar = function(s) {
    6. const map = {};
    7. for (let c of s) {
    8. if (map[c] === undefined) {
    9. map[c] = 1
    10. } else {
    11. map[c]++
    12. }
    13. }
    14. for (let i = 0; i < s.length; i++) {
    15. if (map[s[i]] === 1) {
    16. return i;
    17. }
    18. }
    19. return -1;
    20. };