javascript - international - ecmascript 8
Doble colon de JavaScript(operador de enlace) (1)
No. El operador de enlace ( propuesta de especificaciones ) viene en dos sabores:
-
Método de extracción
::obj.method ≡ obj.method.bind(obj)
-
llamadas de "método virtual"
obj::function ≡ function.bind(obj) obj::function(…) ≡ function.call(obj, …)
Ninguno de ellos presenta una aplicación parcial . Para lo que desea, debe usar una función de flecha:
(...args) => this.handleStuff(''stuff'', ...args) ≡ this.handleStuff.bind(this, ''stuff'')
Como sabes, hay una propuesta de acceso directo para la función
.bind()
, para que puedas escribir:
::this.handleStuff
y funcionará así en es5:
this.handleStuff.bind(this)
Mi pregunta es: ¿será posible pasar argumentos de esta manera?
Me refiero a una forma de escribir esto con el acceso directo mencionado anteriormente:
this.handleStuff.bind(this, ''stuff'')
Es un patrón bastante común en React, por lo que sería bueno acortarlo un poco.