Enstringmiento de métodos en JavaScript

Como buena práctica de programación, deberíamos escribir funciones/métodos individuales para tratar con acciones individuales. Y, escribir solo un método/función para todas las acciones es una cosa. Sin embargo, apegarse a las buenas prácticas afecta la legibilidad y la comprensión del código, porque definir una función separada para cada acción significa que la salida de una sola función/método es la entrada. Esto empeora aún más la comprensión del código, ya que la función debe anidarse en orden inverso. Aquí es donde el enstringmiento de métodos viene al rescate.

Method Chaining es una estrategia de programación que simplifica y embellece su código. Es un mecanismo de llamar a un método en otro método del mismo objeto.

esta palabra clave en JavaScript se refiere al objeto actual en el que se llama. Por lo tanto, cuando un método devuelve this , simplemente devuelve una instancia del objeto en el que se devuelve. Dado que el valor devuelto es una instancia de un objeto, es posible llamar a otro método de un objeto al valor devuelto, que es su instancia. Y esto hace posible el enstringmiento de métodos en JavaScript.

Ejemplo: En este ejemplo, cada método en Land.prototype devuelve this , que se refiere a la instancia completa de ese objeto Land. Y esto ayudaría a llamar a un método en otro método del mismo objeto.

Javascript

//creating a function Land()
function Land() {
this.area = '';
this.status = 'for Sale';
}
//Setting status open for sale
Land.prototype.open = function() {
this.status = 'Open for Sale';
return this;
}
//Setting status not for sale
Land.prototype.close = function() {
this.status = 'Not for Sale';
return this;
}
//Setting Parameters
Land.prototype.setParams = function(area) {
this.area = area;
return this;
}
//printing land status
Land.prototype.doorStatus = function() {
console.log('The',this.area,'Land is',this.status);
return this;
}
//creating a land object
var land = new Land();
land.setParams("500 sq ft").close().doorStatus().open().doorStatus();

Producción:

El terreno de 500 pies cuadrados no está a la venta

El terreno de 500 pies cuadrados está abierto para la venta

Terreno { área: ‘500 pies cuadrados’, estado: ‘Abierto para la venta’ }

Publicación traducida automáticamente

Artículo escrito por priyavermaa1198 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 *