233 of 264 menu

Método bind

O método bind permite vincular um contexto a uma função. Como primeiro parâmetro, deve-se passar o contexto, e nos parâmetros subsequentes - os parâmetros da função. O método retorna uma nova função, dentro da qual this será igual ao contexto passado.

Sintaxe

função.bind(contexto, parâmetro1, parâmetro2...);

Exemplo

Suponha que temos um input:

<input id="elem" value="text">

Suponha que a referência a este input esteja armazenada na variável elem:

let elem = document.querySelector('#elem');

Suponha que também temos a seguinte função func:

function func(param1, param2) { console.log(this.value + param1 + param2); }

Vamos usar bind para criar uma nova função, que será uma cópia da função func, mas this nela sempre será igual a elem:

let newFunc = func.bind(elem);

Agora na variável newFunc há uma função. Vamos chamá-la, passando no primeiro parâmetro '1', e no segundo '2':

newFunc('1', '2');

Vamos juntar tudo:

let elem = document.getElementById('elem'); function func(param1, param2) { console.log(this.value + param1 + param2); } let newFunc = func.bind(elem); newFunc('1', '2'); // exibirá 'text12'

Exemplo

Não é necessário armazenar o resultado do bind em uma nova função newFunc, pode-se simplesmente sobrescrever func:

func = func.bind(elem);

Veja também

  • método call,
    que chama uma função com um contexto
  • método apply,
    que chama uma função com um contexto
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar