Falla la función javascript array push anon

Aquí hay algo con lo que me encontré hoy.

ok

[].push(
  function() {return 1;},
);

no está bien

[].push(
  function() {return 1;},
  function() {return 1;},
);

Alguien sabe lo que está pasando aquí?

gracias!

preguntado el 21 de mayo de 12 a las 18:05

el extra , en tu primer ejemplo? -

¿Qué te hace pensar que el segundo no está bien pero el primero sí? -

1 Respuestas

Ambos funcionan bien siempre que no haya una coma final después del último argumento:

[].push(
  function() {return 1;},
  function() {return 1;}
);

contestado el 21 de mayo de 12 a las 18:05

wow, debería haberlo atrapado yo mismo. Supongo que estoy demasiado acostumbrado a mantener comas finales en ese estilo de notación de matriz. gracias. Debe ser temprano, hora del café. - leoniya

@leeoniya Me alegro de haber podido ayudar. Disfruta tu café :P - Paul

por cierto, ¿cuál es la etiqueta en SO para mantener estas preguntas de errores tontos? No creo que valga la pena mantener esto, ya que proporcionaría poco valor a los demás. ¿Debería eliminar la pregunta? - leoniya

@leeoniya No, deberías dejarlo así. Si la comunidad decide eliminarlo, se eliminará, pero probablemente permanecerá en caso de que alguna vez beneficie a alguien en el futuro. No hace daño que se deje nada. - Paul

@leeoniya: tenga cuidado con las comas adicionales en la notación de matriz. Algunos navegadores los ignoran por conveniencia, pero IE no lo hace (por lo que esto puede ser una fuente de errores difíciles de encontrar). - Hugo

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.