Funciones constructoras en JavaScript

Introducción Link to heading

Las funciones constructoras en JavaScript te permiten crear objetos de forma más eficiente y reutilizable. Son una herramienta fundamental para la programación orientada a objetos (OOP) en JavaScript.

Ejemplo Link to heading

// Constructor function to create "Car" objects
class Car {
  // Car properties
  constructor(make, model, year) {
    this.make = make;
    this.model = model;
    this.year = year;
  }
}

// Creating a new "Car" object
var newCar = new Car("Tesla", "Model 3", 2020);

// Printing the car's properties
console.log(newCar); // Prints "Car { make: "Tesla", model: "Model 3", year: 2020 }"

Explicación: Link to heading

  • La función constructora Car define las propiedades make, model y year para los objetos que se crean a partir de ella.
  • La palabra clave new se utiliza para crear una nueva instancia de la función constructora Car.
  • La variable newCar almacena la referencia al nuevo objeto creado.
  • Al imprimir la variable newCar, se muestran las propiedades del objeto con sus valores correspondientes.

Ventajas de usar funciones constructoras: Link to heading

  • Permiten crear objetos con una estructura y propiedades predefinidas.
  • Facilitan la creación de objetos de forma repetitiva.
  • Promueven la reutilización de código.
  • Permiten crear objetos con mayor complejidad y comportamiento.

Desventajas de usar funciones constructoras: Link to heading

  • Pueden ser más complejas de entender que las funciones tradicionales.
  • Requieren un conocimiento básico de la programación orientada a objetos.

¡Sigue aprendiendo sobre las funciones constructoras para escribir código JavaScript más eficiente y modular!

Adicionalmente: Link to heading

  • Puedes agregar métodos a la función constructora Car para definir comportamientos específicos.
  • Puedes usar la herencia para crear nuevas clases a partir de una clase base, como Car.

Ejemplo de un método: Link to heading

class Car {
  constructor(make, model, year) {
    this.make = make;
    this.model = model;
    this.year = year;
  }

  startEngine() {
    console.log("The car is now started");
  }
}

var newCar = new Car("Tesla", "Model 3", 2020);

newCar.startEngine(); // Prints "The car is now started"
<< Bucles en JavaScript >>