I have a function named close in a js file that can't be renamed for some reason. Now whenever I want to use window.close function (to close the browser tab) I can't: my close function overrides that functionality.
Is there a way to call the main window.close function to close the browser tab?
<!DOCTYPE html>
<html>
<body>
<button onclick="myFunction()">Click me</button>
<script>
function close() {
alert('hi')
}
function myFunction() {
window.close()
}
</script>
</body>
</html>
You can change the
closevariable from being property of the global object to be a global variable only by declaring it withletorconst- see Do let statements create properties on the global object?. So withyour
myFunctionimplementationwill just begin to work.
(Of course, this will break all old code that did call
window.close()and expected it toalert('hi')- but imo that was a bug anyway).