JSFiddle - React, Tailwind, and code Playground

by Sebastian

JavaScript

function permAlone(str) {
  var combs = str.length;
  var letters = {};
  for (var i = str.length-1; i >= 0; i--) {
    var current = str[i];
    if (letters.hasOwnProperty(current)) {
        letters[current]++;
        }
    else {
          letters[current] = 1;
        }
       if (i > 0 ) combs *= i; // counting all combinations
   
  } // end for loop
  var digitQuant = [];
  for (var prop in letters) {
  digitQuant.push(letters[prop]);
  }
  var perps = 1 * digitQuant.length;
  for (var j = 0; j < digitQuant.length; j++) {
    perps *= digitQuant[j];
  }
  console.log("digitQuant: ", digitQuant);
  console.log("perps: ", perps);
  return perps;
}

permAlone('aab');