JSFiddle - React, Tailwind, and code Playground

by saidulu401

JavaScript

const str = 'najabajajajara';
/* const charObj = {}
// for(let i=0;i<str.length;i++){
//     //if(!charObj[str[i]]) charObj[str[i]]
//     charObj[str[i]] = (charObj[str[i]] || 0 ) + 1;

// }
for(let v of str){
    //if(!charObj[str[i]]) charObj[str[i]]
    charObj[v] = (charObj[v] || 0 ) + 1;

}
let first = '';
 for (const char of str) {
    if (freq[char] === 1) {
      first = char;
      return;
    }
  }
console.log(charObj) */
// function firstNonRepeatingChar(str) {
//   const freq = {};

//   // count characters
//   for (const char of str) {
//     freq[char] = (freq[char] || 0) + 1;
//   }
//   console.log(freq,'freq')
//   // find first with count = 1
//   for (const char of str) {
//     if (freq[char] === 1) {
//       return char;
//     }
//   }

//   return null; // or -1 if not found
// }

// console.log(firstNonRepeatingChar("najabajajajara")); 

function firstRepeatingChar(str) {
  const freq = {};

  // count characters
  for (const char of str) {
    freq[char] = (freq[char] || 0) + 1;
  }
  console.log(freq,'freq')
  // find first with count = 1
  for (const char of str) {
    if (freq[char] > 1) {
      return char;
    }
  }

  return null; // or -1 if not found
}

console.log(firstRepeatingChar("najabajajajara")); // w