¿Cómo agregar un método a la clase String en JavaScript?

La tarea es agregar un método a la clase String en JavaScript. Hay dos enfoques que se describen con los ejemplos adecuados:

Enfoque 1: use el método Object.defineProperty() , que se usa para definir una nueva propiedad directamente en un objeto, o modifica una propiedad existente. Toma 3 argumentos, el primero es Object, el segundo es propertyName y el último es propertyDescription. En este ejemplo, se devuelve la suma de la longitud de las strings.

  • Ejemplo:

    <!DOCTYPE HTML>
    <html>
      
    <head>
        <title>
            Add method to String class in JavaScript
        </title>
          
        <style>
            body {
                text-align: center;
            }
              
            h1 {
                color: green;
            }
        </style>
    </head>
      
    <body>
        <h1>GeeksforGeeks</h1>
          
        <p id="GFG_UP"></p>
          
        <button onClick="GFG_Fun()">
            click here
        </button>
          
        <p id="GFG_DOWN"></p>
          
        <script>
            var up = document.getElementById('GFG_UP');
            var down = document.getElementById('GFG_DOWN');
              
            var str1 = "GeeksforGeeks";
            var str2 = "A Computer Science Portal";
              
            up.innerHTML = "Click on button to get the "
                        + "sum of length of the both "
                        + "strings<br>Str1 - '" + str1
                        + "'<br>Str2 - '" + str2 + "'";
              
            Object.defineProperty(String.prototype,
            'SumOfLength', {
                value: function(param) {
                    return this.length + param.length;
                }
            });
      
            function GFG_Fun() {
                const res = str1.SumOfLength(str2);
                down.innerHTML = res;
            }
        </script>
    </body>
      
    </html>
  • Producción:

Enfoque 2: use String.prototype.propertyName para agregar un nuevo método a la clase String. Defina un método que tome los argumentos pasados ​​por el objeto y realice la operación deseada. En este ejemplo, se devuelve la suma de la longitud de las strings.

  • Ejemplo:

    <!DOCTYPE HTML>
    <html>
      
    <head>
        <title>
            Add method to String
            class in JavaScript
        </title>
          
        <style>
            body {
                text-align: center;
            }
              
            h1 {
                color: green;
            }
        </style>
    </head>
      
    <body>
        <h1>GeeksforGeeks</h1>
          
        <p id="GFG_UP"></p>
          
        <button onClick="GFG_Fun()">
            click here
        </button>
          
        <p id="GFG_DOWN"></p>
          
        <script>
            var up = document.getElementById('GFG_UP');
            var down = document.getElementById('GFG_DOWN');
              
            var str1 = "GeeksforGeeks";
            var str2 = "A Computer Science Portal";
              
            up.innerHTML = "Click on button to get the "
                        + "sum of length of the both "
                        + "strings<br>Str1 - '" + str1
                        + "'<br>Str2 - '" + str2 + "'";
              
            String.prototype.SumOfLength = function( arg ) {
                return this.length + arg.length;
            };
            function GFG_Fun() {
                const res = str1.SumOfLength(str2);
                down.innerHTML = res;
            }
        </script>
    </body>
      
    </html>
  • Producción:

Publicación traducida automáticamente

Artículo escrito por PranchalKatiyar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *