엔텐디엔도 엘 메토도 바인드()

엘 메토 bind() se usa para crear una nueva función donde el primer parametro es el objeto al cual se quiere hacer referencencia cuando se usa la keyword this 덴트로 데 라 펑시온.

예를 들어, 다음과 같은 목표를 달성할 수 있습니다.

const person1 = {
    name: 'Harvey',
    age: 30,
    getData(hobby) {
        return `Hello, I'm ${this.name}, I'm ${this.age} and I like to ${hobby}`
    }
}

const person2 {
    name: 'Spencer',
    age: 24
}


Como podemos ver, el objeto student 아니 티엔 엘 메토도 getData() , 죄 금수 조치, podemos hacer uso de este gracias al método bind ya que podemos pasarle como primer parametro al objeto student , 포르 로케 this 에스테틱 오브제토.

const person = {
    name: 'Harvey',
    age: 30,
    getData: function(hobby) {
        return `Hello, I'm ${this.name}, I'm ${this.age} and I like to ${hobby}`
    }
}

const student = {
    name: 'Spencer',
    age: 22
}

const getStudentData = person.getData.bind(student);

console.log(getStudentData('play videogames')); // Hello, I'm Spencer, I'm 22 and I like to play videogames


Otra forma de pasarle los parametros necesarios a la función es usando el mismo metodo bind() , ya que, si bien el primer parametro hace Referencia al objeto que usaremos, a partir del segundo parametro serán los argumentos definidos en la función original.


const getStudentData = person.getData.bind(student, 'play videogames');

console.log(getStudentData()); // Hello, I'm Spencer, I'm 22 and I like to play videogames


💡 Cuando se vea la expresión this.cualquierMetodo.bind(this) es porque se esta llamando el método de dicho objeto y para evitar perder la referencia del mismo se establece de forma explícita mediante el método bind().

좋은 웹페이지 즐겨찾기