A maneira mais fácil de usar bind () para bind () é criar uma função para que a função tenha o mesmo valor, não importa como ela seja chamada. Ao contrário da chamada e da aplicação, que simplesmente definem o valor disso e passam os argumentos, ele também ligará todos os argumentos reais passados ao método bind () (os parâmetros após o primeiro parâmetro) com isso.
Para exemplos desse recurso, consulte o texto original de "JS Outoritativo Guia":
var sum = function (x, y) {return x + y}; varc = sum.bind (nulo, 1); // Deixe este ponto para nulo, e os parâmetros reais subsequentes também serão transmitidos para a função ligada Sumsucc (2); // => 3: você pode ver que 1 está vinculado a x na função da somaEm segundo lugar, o comprimento da função retornado pelo método bind () é igual à quantidade de parâmetro de forma da função original menos a quantidade real de parâmetro passada para o método bind () (todos os parâmetros após o primeiro parâmetro), porque os parâmetros reais passados para ligação estarão ligados aos parâmetros formais da função original, por exemplo:
function func (a, b, c, d) {...} // O comprimento do func é 4var após = func.bind (null, 1,2); // Os dois parâmetros reais (1,2) são inseridos aqui para se ligar ao a da função func, bconsole.log (depois.length); // o comprimento de depois é 2Terceiro, quando a função retornada por bind () é usada como construtor, isso passou para Bind () será ignorado e todas as contas reais serão passadas para a função original. Isso é muito abstrato. Por exemplo:
função original (x) {this.a = 1; this.b = function () {return this.a + x}} var obj = {a = 10} var newobj = new (original.bind (obj, 2)); // um parâmetro real 2console.log (newobj.a); // Saída 1, indicando que o OBJ (este valor) é ignorado quando a função retornada é usada como um console de construtor.log (newobj.b ()); // Saída 3, indicando que o parâmetro 2 passado é passado para a função original originalO exposto acima são as características do método de ligação no ES5, e essa tecnologia também é chamada de curry funcional . Essa técnica transforma uma função com vários parâmetros em uma função com apenas um parâmetro. O método de ligação é a prática dessa tecnologia no JS.
Esta breve discussão sobre o método de ligação e a função de curry em JS é todo o conteúdo que compartilho com você. Espero que possa lhe dar uma referência e espero que você possa apoiar mais o wulin.com.