Los temas de las variables de JavaScript: dos alternativas

En JavaScript, puede escribir funciones con argumentos variables, es decir, funciones que no necesariamente aceptan un número fijo de entradas. Por ejemplo, puede escribir funciones como esta:

1
2
3
4
5
6
7
8
9
10
11
12
/ / Esta función muestra el número y valor de los argumentos
/ / Se pasa por referencia a los argumentos internos y
/ / Sin necesidad de ninguna declaración
parametri_variabili función () {
'Numero argomenti passati = ' + arguments. length ) ; alert ('Número de argumentos =' + argumentos de longitud.);
/ / Muestra todos los temas
'' ; var o ='';
var i = 0 ; i < arguments. length ; i ++ ) { for (var i = 0; i <argumentos de longitud;. i + +) {
i ] + ' \n ' ; o + = argumentos [i] + '\ n';
}
o ) ; alerta (o);
}

Así, tenemos:

1
2
3
// nessuno parametri_variabili () / / ninguno

, 32 ) ; // due argomenti: stringa e numero parametri_variabili ("hola", 32); / / dos argumentos: número de serie

Esta técnica es muy útil en muchos casos, sin embargo - en mi opinión - se puede mejorar, ya que este enfoque se refiere a:

  • Los argumentos siempre se debe seguir el mismo orden: los argumentos [0] es el primer argumento, [1] es el segundo, y así sucesivamente ...
  • El índice es el acceso por materias (argumentos [0], y los argumentos [4] por ejemplo), entonces simplemente "leer" toda la implementación del código

Una alternativa podría ser utilizar objetos quela-inline (literal de objetos). Por ejemplo, podemos escribir:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
args ) { parametri_variabili función (argumentos) {
args. miaStringa ) ; alerta (args. miCadena);
args. mioNumero ) ; alerta (args. mioNumero);
}

/ / Uso de
parametri_variabili ({
, miaString: 'hola',
mioNumero: 32
});

/ / O
parametri_variabili ({
, mioNumero: 32,
miaString: 'hola'
});

Como se puede ver en el código, el orden de los temas, siendo la propiedad de un objeto, no es importante. También en el código de la función es esssere más clara, el tratamiento de "propiedad" de un objeto en lugar de los índices de la matriz.
Esta técnica es muy buena en el caso de funciones con varios argumentos, por supuesto.

No hay comentarios para esta entrada

Deja un comentario

TAG PERMISOS XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> código de inserción:
 <pre></pre> // blocco generico <code></code> // blocco generico [cc_actionscript][/cc_actionscript] // Actionscript [cc_actionscript3][/cc_actionscript3] // Actionscript 3 [cc_css][/cc_css] // CSS Style Sheet [cc_html][/cc_html] // HTML [cc_js][/cc_js] // Javascript [cc_objc][/cc_objc] // Objective-C [cc_php][/cc_objc] // PHP [cc_sql][/cc_sql] // SQL 


Deje de SOPA