what does .bind do code example

Example 1: what is the use of bind method in javascript

"Variables has local and global scopes. Let's suppose that we have two variables
with the same name. One is globally defined and the other is defined inside a
function closure and we want to get the variable value which is inside the
function closure. In that case we use this bind() method.

code:

var x = 9; // this refers to global "window" object here in the browser

var person = {
  x: 81, // local variable x = 81
  getX: function() {
    return this.x; // "this" = person , so this.x is the same as  person.x
  }
};
//  the next line of code is the most important one (line 17)
var y = person.getX; // It will return 9, because it will call global value of x(var x=9).

var myFunc = y.bind(person); // It will return 81, because it will call local value of x, which is defined in the object called person(x=81).

y(); // return 9 (the global variable);

myFunc();" // return 81 (the loacl variable);

Example 2: javascript bind

function myFunc(p1, p2, pN, addedParam)
{
     // here "this" equals "myThis"
}
let myThis = {};

// create new function that, when invoked, calls
// myFunc using myThis as context.
// prepend params as function arguments to those
// provided when invoked.
let f = myFunc.bind(myThis, "param1", "param2", "paramN");
f("addedParam");