Ir al contenido principal

JavaScript ES6 Features - Computed Property Names

Sometimes you may want to initialize an object by setting the property names dynamically using strings defined somewhere else. You can use the ES6’s Computed property names for this, in this quick tips episode, you will learn how. Above is the vid and below you will find some useful notes.
  1. 1.

    Pre-reqs

    • Have a browser like Chrome, Edge or Firefox installed
  2. 2.

    Using Computed Property Names in Javascript

    • Initialize and Object with a computed property name
      const fieldName = 'creature';
      
      let myObject = {
        [fieldName]: '🐉'
      };
      
    • Getting the values from the object using the dot or the bracket notation
      console.log(myObject.creature);
      console.log(myObject[fieldName]);
      
    • A more complex example of computed property names
      let stuff = {
        ['food' + 1]: '🍌',
        ['something'.toUpperCase() + 1 + '_function' + 2]: () => '🏺'
      }
      
      console.log(stuff.food1);
      console.log(stuff.SOMETHING1_function2());
      
    • Defining Class methods and getters or setters using computed property names
      const aDynamicMethodName = 'weirdHuh',
            aDynamicPropertyName = 'something';
      
      class SomethinInteresting {
        [aDynamicMethodName]() {
          console.log('Interesting way of naming methods');
        }
      
        get [aDynamicPropertyName]() {
          return 'a dynamic getter name is born!';
        }
      }
      
    • Calling the methods or getters using the dot or the bracket notation
      const myNewObject = new SomethinInteresting();
      
      myNewObject[aDynamicMethodName]();
      myNewObject.something;
      
  3. 3.

Comentarios

Entradas populares de este blog

How to copy files from and to a running Docker container

Sometimes you want to copy files to or from a container that doesn’t have a volume previously created, in this quick tips episode, you will learn how. Above is the vid and below you will find some useful notes. 1. Pre-reqs Have Docker installed 2. Start a Docker container For this video I will be using a Jenkins image as an example, so let’s first download it by using docker pull docker pull jenkins/jenkins:lts ...

Brighten Up Your AEM Assets: How to Configure Default Backgrounds and Transparent Modes in Adobe Dynamic Media

Introduction The Importance of a Good Background Defining Your Default Background in AEM Defining Your Default Background in Dynamic Media Classic Transparent Images with fmt=png-alpha Explicit Background Colors with ?bgc Final Thoughts Introduction Welcome to our deep dive into the wonderful world of image backgrounds! In this post, we're going to explore how to configure Dynamic Media Classic in Adobe Experience Manager (AEM) to not only define a default background image but also how to get your images to pop with ...

Exposing Reactjs component methods to Javascript or non-reactjs applications

blog-static-generator-new If you want to integrate your javascript or non-reactjs application with a reactjs app and be able to access reactjs components and call their methods to execute actions or get information out of them, in this quick tips episode, you will learn how. Above is the vid and below you will find some useful notes. 1. Pre-reqs Have node.js installed 2. Exposing React JS to Javascript or non-reactjs applications ...