No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Última oportunidad para asegurar tu aprendizaje por 1 año a precio especial

Antes: $249

Currency
$189/año

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

0D
14H
23M
1S

PlatziMath: clases y métodos estáticos

21/30
Recursos

Aportes 15

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Al final respondí, pues… mete otro tag script y adjunta el file platzimath.js

Luego dije, nooo. Es muy fácil para que sea eso, y que salió.

Ya que no sé que es fácil y difícil, jaja.

En vista de los pocos comentarios, algo me hace pensar que muchos se rindieron jajajaja
Pues ya casi los alcanzo C,:

Les comparto cómo quedaría todo utilizando clases. 😄

export class PlatziMath {
    static getAverage (list) {
        let sumNumbers = 0;

        for (const NUMBER of list) {
            sumNumbers += NUMBER;
        }

        const AVERAGE = sumNumbers / list.length;

        return AVERAGE;
    }

    static isOdd = (list) => Boolean(list.length % 2);

    static isEven = (list) => !(list.length % 2);

    static calculareMedian (unorderedList) {
        const SORTED_LIST = this.sortList(unorderedList);
        const IS_ODD = this.isOdd(SORTED_LIST);
        const IS_EVEN = this.isEven(SORTED_LIST);
        let median = 0;

        if (IS_ODD) {
            const HALF_ODD = Math.floor(SORTED_LIST.length / 2);

            median = SORTED_LIST[HALF_ODD];
        }

        if (IS_EVEN) {
            const FIRST_HALF = Math.floor(SORTED_LIST.length / 2);
            const SECOND_HALF = FIRST_HALF - 1;
            const LIST_HALVES = [ SORTED_LIST[FIRST_HALF], SORTED_LIST[SECOND_HALF] ];

            median = this.getAverage(LIST_HALVES);
        }

        return median;
    }

    static sortList (unorderedList) {
        const SORTED_LIST = unorderedList.sort((a, b) => a - b);

        return SORTED_LIST;
    }

    static sortListBidimensional (unorderedList, i) {
        let sortedList = [];

        if (i === 1)
            sortedList = unorderedList.sort((a, b) => b[i] - a[i]);

        return sortedList;
    }

    static calculateMode (list) {
        const COUNTER_LIST = {};

        for (const ITEM of list) {
            (ITEM in COUNTER_LIST)
                ? COUNTER_LIST[ITEM] += 1
                : COUNTER_LIST[ITEM] = 1;
        }

        const LIST_ARRAY = Object.entries(COUNTER_LIST);
        const LAST_SORTED_LIST = LIST_ARRAY[0].length - 1;
        const SORTED_LIST = this.sortListBidimensional(LIST_ARRAY, LAST_SORTED_LIST);
        const MODE = SORTED_LIST[0][0];

        return MODE;
    }
} 

Para generar varios cursores o editores en el VSC, pulsen el click para seleccionar líneas y presionen ALT+SHIFT.

JavaScript siendo JavaScript

Definitiva mente esta clase fue la que me hizo hacer un descubrimiento inmenso, que increible

**Así puedes copiar los nombres de las funciones:
**
Con ALT se crean nuevos cursores.
y con ALt + SHIFT + flechita (derecha o izquierda) se va a seleccionar toda la palabra.

Estas clases de estadística sirvieron para poder traer “ideas abstractas” (no como decirlo exactamente xd) de las mates a un código de programación ❤️

La primera vez que hice todo el curso me costaba entender mucha parte del código. Decidí volver a hacer todos los ejercicios de este curso con más calma y todo fluye con más claridad.
La clave es no rendirse, todos podemos!!

seguimos de pies señores, 4 dias metidos de cabeza y con severo malestar y satisfaccion, vamos👹

💪💪💪💪💪💪💪💪🚀

También puede hacerse sin un HTML de por medio.
.
mathClass.js:

const MathClass = {};

MathClass.addition = (a, b) => a + b;
MathClass.substract = (a, b) => a - b;
MathClass.multiplication = (a, b) => a * b;
MathClass.division = (a, b) => a - b;

module.exports = MathClass;

test.js:

const MathClass = require("./mathClass");

console.log(MathClass.addition(1, 2));
console.log(MathClass.substract(2, 1));
console.log(MathClass.multiplication(3, 2));
console.log(MathClass.division(4, 2));

Se ejecuta:

node .\test.js

Se obtiene el output:

3
1
6
2

Los métodos estáticos son funciones asociadas a una clase en la programación orientada a objetos que no requieren una instancia de la clase para ser invocados.
.
Siguiendo el mismo ejemplo pero con clases sería:

class MathClass {
  static add(a, b) {
    return a + b;
  }
}

const result = MathClass.add(5, 3);
console.log(result);

Como se puede observar aún teniendo la clase no fue necesario crear un nueva instancia de la clase como new MathClass() para poder utilizar su método estático.

https://app.codesignal.com/arcade/intro/level-1/egbueTZRRL5Mm4TXN
les recomiendo esa pagina si quieren practicar ejercicios de js

Exelente clase, hace las cosas mas simple.

Para importar código JS en otro, en el HTML que hará referencia a ese otro archivo JS llamar primero al archivo JS que se quiere importar.

En mi caso: