Dado un documento HTML y la tarea es anular la función, ya sea una función predefinida o una función definida por el usuario usando JavaScript.
Enfoque: cuando ejecutamos el script, se llama a la función Fun(). Después de hacer clic en el botón, se llama a la función GFG_Fun() y esta función contiene otra función que se ejecutará.
Ejemplo 1: En este ejemplo, se anula una función escrita por el usuario.
<!DOCTYPE HTML> <html> <head> <title> How to override a JavaScript function ? </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" id = "h1"> GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "color:green; font-size: 20px; font-weight: bold;"> </p> <script> var up = document.getElementById('GFG_UP'); up.innerHTML = "Click on the button to override" + " the function."; var down = document.getElementById('GFG_DOWN'); function Fun() { return "This is from old function"; } down.innerHTML = Fun(); function GFG_Fun() { var newFun = Fun; Fun = function() { return "This is from overridden function"; } down.innerHTML = Fun(); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botón:
Ejemplo 2: en este ejemplo, se anula un método parseFloat .
<!DOCTYPE HTML> <html> <head> <title> How to override a JavaScript function ? </title> </head> <body style = "text-align:center;"> <h1 style = "color:green;" id = "h1"> GeeksForGeeks </h1> <p id = "GFG_UP" style = "font-size: 15px; font-weight: bold;"> </p> <button onclick = "GFG_Fun()"> click here </button> <p id = "GFG_DOWN" style = "color:green; font-size: 20px; font-weight: bold;"> </p> <script> var up = document.getElementById('GFG_UP'); up.innerHTML = "Click on the button to override" + " the function."; var down = document.getElementById('GFG_DOWN'); down.innerHTML = "Floor value of '2.345' is "; function GFG_Fun() { // Override parseFloat = function(x) { return "Floor value of '2.345' is " + Math.floor(x); } // Overriding the parseFloat function and // use it as Math.floor down.innerHTML = parseFloat(2.345); } </script> </body> </html>
Producción:
- Antes de hacer clic en el botón:
- Después de hacer clic en el botó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