Respuestas Ejercicio 39 (JS Septiembre 2022)

Comparte tu respuesta del ejercicio 39

Escribe una función llamada frecuencias que reciba un string y retorne un objeto con el número de veces que aparece cada carácter (exceptuando el espacio en blanco):


// escribe tu función acá

// código de prueba

console.log(frecuencias("hola mundo"));

// { h: 1, o: 2, l: 1, a: 1, m: 1, u: 1, n: 1, d: 1 }

console.log(frecuencias("anita lava la tina"));

// { a: 6, n: 2, i: 2, t: 2, l: 2, v: 1 }

Nota: Recuerdas que puedes formatear el bloque de codigo que compartas agregando 3 backticks, comillas francesas, o tildes al reves
Ejemplo:

console.log('hola')
console.log('mundo')
const frecuencias=(text)=>{
  const obj={}
  const newArr=text.replaceAll(" ","").split("")
  newArr.forEach((item)=>{
    if(!obj[item]) return obj[item]=1
    obj[item]++
  })
  return obj
}

console.log(frecuencias("hola mundo"));
console.log(frecuencias("anita lava la tina"));
const frecuencias=(texto)=>{
  const objeto={}
  const newArr=texto.replaceAll(" ","").split("")
  newArr.forEach((items)=>{
    if(!objeto[items]) return objeto[items] = 1
    objeto[items]++
  })
  return objeto
}

console.log(frecuencias("hola mundo")); // { h: 1, o: 2, l: 1, a: 1, m: 1, u: 1, n: 1, d: 1 }
console.log(frecuencias("anita lava la tina")); // { a: 6, n: 2, i: 2, t: 2, l: 2, v: 1 }
function frecuencias(cadena){
  const letrasOriginal = cadena.split(" ").join("").split("")
  const letrasUnicas = [...new Set(letrasOriginal)]
  let objeto = {}
  for(letra1 of letrasUnicas){
    let contador = 0
    for(letra2 of letrasOriginal){
      if(letra1 == letra2){
        contador++
      }
    }
    objeto[letra1] = contador
  }
  return objeto
}
function frecuencias(str){
  let str1 = str.replaceAll(" ","")
  let str2 = ""
  let obj = {}
  let cont = 0 
  
  for(let i=0;i<str1.length;i++){
    if(!str2.includes(str1[i])){
      str2 += str1[i]
    }
  }  
   
  for(let i=0;i<str2.length;i++){
    for(let j=0;j<str1.length;j++){
      if(str2[i] === str1[j]){
          cont++
      }
    }    
    obj[str2[i]] = cont
    cont = 0
  }
  return obj
}

Mi respuesta al Ejercicio 39:

function frecuencias(str) {
  const obj = {};
  for (let char of str) {
    if (char === ' ') continue;
    if (obj.hasOwnProperty(char)) obj[char]++;
    else obj[char] = 1;
  }
  return obj;
}
1 me gusta
function frecuencias(cadena){
      let objeto = {};
      cadena = cadena.replaceAll(" ","");
      for(chr in cadena){
            let item = String(cadena[chr]);
            if(!objeto[item]){
                  objeto[item] = 1;
            } else {
                  objeto[item]++;
            }
      }
      return objeto;
}

// código de prueba
console.log(frecuencias("hola mundo"));
// { h: 1, o: 2, l: 1, a: 1, m: 1, u: 1, n: 1, d: 1 }

console.log(frecuencias("anita lava la tina"));
// { a: 6, n: 2, i: 2, t: 2, l: 2, v: 1 }
function frecuencias(cadena){
  
  const palabras = cadena.split(" ")
  const letras = palabras.join("")
  
  const letra = [...new Set(letras)]
  
  let objeto = {}
  
  for(letra1 of letra){
    let cantidadLetras = 0
    
    for(letra2 of letras){
      
      if(letra1 == letra2){        
        cantidadLetras++
      }
    }
    objeto[letra1] = cantidadLetras
  }
  return objeto
}
function frecuencias(str) {
  const obj = {};
  for (let char of str) {
    if (char === ' ') continue;
    if (obj.hasOwnProperty(char)) obj[char]++;
    else obj[char] = 1;
  }
  return obj;
}

Hola!
Esta es mi respuesta:

function frecuencias(sentence){
  sentence = sentence.replaceAll(" ","")
  let obj = {}
  for (let i = 0; i < sentence.length; i++){
    const char = sentence[i]
    if (obj[char]) {
      obj[char]++
    } else {
      obj[char] = 1
    }
  }
  return obj
}
function frecuencias (phrase){
  phrase = phrase.replaceAll(" ","")
  const obj = {}
  for (char of phrase){
    if (obj[char]){
      obj[char]++
    }
    else obj[char]=1
  }
  return obj
}

console.log(frecuencias("hola mundo"));
console.log(frecuencias("anita lava la tina"))
function frecuencias (word){
  word=word.replaceAll(" ","")
  let objeto={}
  for (let i=0; i<word.length;i++){
    const caracteres=word[i]
      if(objeto[caracteres]){
      objeto[caracteres]++
    } else{
        objeto[caracteres]=1
    }
    }
  return objeto
  }

Ejemplo un reducer
Puede no ser la forma más clara para un principiante en JavaScript, sin embargo, debido a que estas funciones son propias del lenguaje suelen ser más eficientes en terminos de rendimiento al realizar iteraciones.

const frecuencias = ( string ) => {
  const valorInicial = {};
  
  return resultado = [ ...string ].reduce( ( valorPrevio, valorActual ) => {
    // Valida que el valorActual sea diferente a un espacio para crear el objeto que acumulara la cantidad de repeticiones
    if( valorActual !== ' ' )
      valorPrevio[ valorActual ] = ( valorPrevio[ valorActual ] || 0 ) + 1;  // La primera ves que se encuentre una letra 'valorPrevio[ valorActual ]' sera indefinido y la cantidad de letras sera 0 CERO

    // console.log( valorPrevio );    // Descomentar para ver como va acumulando los valores en un objeto
    return valorPrevio;
  }, valorInicial );
}

function frecuencias(texto)
{
let array={}
let cont=0;
let texto2=texto.toString().split(‘’)
let texto3=texto.toString().split(‘’)

for (let index = 0; index <texto3.length; index++)
  {
  
    for (let index2 = 0; index2 <texto3.length; index2++)        {
      if(texto3[index]==texto2[index2])
      {
          cont=cont+1
         
      
      }
    }
    if(texto2[index]!==' ')
    {
      array[texto2[index]]=cont
    }
     
     
      cont=0;
    
  }
  

return array

}

function frecuencias(texto)
	{
	  const inicial = texto.split(" ").join("").split("")
	  const caracter = [...new Set(inicial)]
	  let obj = {};
  
 		 for(letter of caracter){
    
    			let i = 0
	    for(letra2 of inicial)
    		{
	          if(letter == letra2)
        	{
          	  i++
        	}
    	}
    
   		 obj[letter] = i
 	 }
	  return obj
	}
// Funcion para agrgar cantidad de letras de una cadena a un objeto
function frecuencias(cadena) {
  cadena = cadena.replaceAll(' ', '') // Elimina los espacios de una cadena
  let objLetters = {} // Crear objeto vacio
  // Ciclo for para recorrer cada posicion de la cadena 
  for (let index of cadena) {
    // Condicional if para validar las letras repetidas
    if (objLetters[index]) {
      objLetters[index] = objLetters[index] + 1 // Incrementa la cantidad y se almacena en el objeto como valor junto a la llave que seria la letra
    } else {
      objLetters[index] = 1 // Se asigna valor si no encuentra repetidas
    }
  }
  return objLetters // Retorna objeto
}

// Imprime en consola llamando la funcion y dando datos
console.log(frecuencias("hola mundo"));
console.log(frecuencias("anita lava la tina"));

function frecuencias(cadena){
const cadena1=cadena.replaceAll(" “,”")
const objeto={}
let paso=[]
for(let ind=0;ind<cadena1.length;ind++){
if(!paso.includes(cadena1[ind])){
paso[ind]=cadena1[ind]
objeto[cadena1[ind]]=1
}else{objeto[cadena1[ind]]++
}
}
return objeto
}

function frecuencias (string){
  objeto_value = {}
  for(char of string){
    if(char===' ' )continue;
    
    if (objeto_value.hasOwnProperty(char))
      objeto_value[char]++;
      
  else objeto_value[char]=1
   
  }
      return objeto_value
}
function frecuencias(arreglo){
let cant= {}
arreglo2=arreglo.split("")
  for (let i of arreglo2){
    if(cant[i])
      cant[i]++
    else
      cant[i] = 1
  }
return cant
}
function frecuencias(str)
{
  
  let objoutput = {}
  let cont = 0
  str = str.replaceAll(' ', '')
  
  for(let i = 0; i < str.length; i++)
  { 
    for (let j = 0; j < str.length; j ++)
    {
      if(str[i] === str[j])
      {
      cont = cont + 1
      //console.log(`'i:' ${i} 'letra:'${str[i]}, 'j:'${j} 'letra:'${str[i]}, 'cont:' ${cont}`)
      }
      
    }
    objoutput[str[i]] = cont
    cont = 0
  }

  return objoutput
  
}