var problemtest = function() {
var parameters;
return function (parameters) {
parameters = parameters;
}
}
var mysolutiontest = function() {
var parameters;
return function (parametersIn) {
parameters = parametersIn;
}
}
Esto es más una pregunta de convención de JavaScript.Convención de JavaScript: cómo asignar argumentos al ámbito principal
Normalmente tengo un código similar al de arriba. Una función toma argumentos y los asigna al alcance principal. Sin embargo, no puedo usarlo como en problemtest
, ya que parameters
que son argumentos ocultan parameters
de problemtest
.
En OO Programming podemos usar this
, pero en JavaScript no puedo usar this
, así que generalmente implemento una solución similar a mysolutiontest
. Sin embargo, no estoy completamente satisfecho con esta solución. ¿Hay una mejor manera de hacer esto?
+1, pero probablemente debería señalar que el uso de 'this.property' puede provocar un comportamiento inesperado para aquellos que no están familiarizados con el funcionamiento de los objetos JS. Ejemplo: use 'object.methodOne' como un manejador de eventos. –
De acuerdo. He editado y agregado la excelente publicación de Angus Croll sobre el tema –
@ LiorCohen-'<... onclick =" function() {object.methodOne();} "...>'. – RobG