Dado un objeto de JavaScript anidado, la tarea es aplanar el objeto y extraer todos los valores a una sola profundidad. Si los valores ya están en una sola profundidad, devuelve el resultado sin cambios.
Método typeof(): El método typeof() se utiliza en el script para comprobar el tipo de variable de JavaScript.
Sintaxis:
typeof(variable)
Parámetros: este método acepta un parámetro como se mencionó anteriormente y se describe a continuación:
- Variable: La variable de entrada.
Valor devuelto: este método devuelve una string que contiene el tipo de la variable pasada.
Acercarse:
- Hacemos una función llamada aplanar objeto que toma la entrada de un objeto y devuelve un objeto.
- Recorra el objeto y verifique el tipo de la propiedad actual:
- Si es de tipo Object y no es un Array , vuelva a llamar recursivamente a la función.
- De lo contrario, almacene el valor en el resultado.
- Devolver el objeto.
Ejemplo:
Javascript
// Declare an object let ob = { Company: "GeeksforGeeks", Address: "Noida", contact: +91-999999999, mentor: { HTML: "GFG", CSS: "GFG", JavaScript: "GFG" } }; // Declare a flatten function that takes // object as parameter and returns the // flatten object const flattenObj = (ob) => { // The object which contains the // final result let result = {}; // loop through the object "ob" for (const i in ob) { // We check the type of the i using // typeof() function and recursively // call the function again if ((typeof ob[i]) === 'object' && !Array.isArray(ob[i])) { const temp = flattenObj(ob[i]); for (const j in temp) { // Store temp in result result[i + '.' + j] = temp[j]; } } // Else store ob[i] in result directly else { result[i] = ob[i]; } } return result; }; console.log(flattenObj(ob));
Producción:
{ Company: 'GeeksforGeeks', Address: 'Noida', contact: -999999908, 'mentor.HTML': 'GFG', 'mentor.CSS': 'GFG', 'mentor.JavaScript': 'GFG' }