Default Parameters


    Resumo/Informações
    • What is it?
      They are used whenever we need one or more parameters of a function to be preset, so that they will have default values.

      Example

      ES5
      function SmithPerson(firstName, yearOfBirth, lastName, nationality) {

        lastName === undefined ? lastName = 'Smith' : lastName = lastName;
        nationality === undefined ? nationality = 'American' : nationality = nationality;

        this.firstName = firstName;
        this.lastName = lastName;
        this.yearOfBirth = yearOfBirth;
        this.nationality = nationaly;
      }

      var john = new SmithPerson('John', 1990); Visto que aqui não definimos informações para yearOfBirth e nationality, elas ficarão como Undefined e portanto podemos criar um if para todas as que ficarem como undefined receberem um default.
      var emily = new SmithPerson('Emily', 1983, 'Diaz', 'Spanish');

      john = John, Smith, 1990, American.
      emily = Emily, Diaz, 1932, Spanish - Veja que quando definimos um parâmetro, ele sobreescreve o default.

      ES6

      function SmithPerson(firstName, lastName, yearOfBirth, lastName = 'Smith', nationality = 'American') {
        this.firstName = firstName;
        this.lastName = lastName;
        this.yearOfBirth = yearOfBirth;
        this.nationality = nationaly;
      }

      var john = new SmithPerson('John', 1990); Visto que aqui não definimos informações para yearOfBirth e nationality, elas ficarão como Undefined e portanto podemos criar um if para todas as que ficarem como undefined receberem um default.
      var emily = new SmithPerson('Emily', 1983, 'Diaz', 'Spanish');