riot javascript jquery arrays push

riot - title html javascript



Empujando el valor de Var en una matriz (4)

Sé que esta es probablemente una pregunta simple, pero estoy intentando modificar un plugin & js no es mi experiencia y me sorprendió cómo hacer lo siguiente:

Tengo una matriz que puede contener una cantidad de valores ($ fruta) dependiendo de lo que un usuario haya ingresado. Quiero agregar otra variable a la matriz que no está determinada por la entrada manual.

Sé que push debería aplicarse aquí pero no parece funcionar, ¿por qué no funciona la siguiente sintaxis?

var veggies = "carrot"; var fruitvegbasket = $(''#fruit'').val(); fruitvegbasket.push(veggies);

actualización: lo tengo funcionando haciendo esto

var fruit = $(''#fruit'').val(); var veggies = "carrot"; fruitvegbasket = new Array(); fruitvegbasket.push(fruit+","+veggies);

No estoy seguro de que sea la mejor manera de hacerlo, pero funciona. ¡gracias a todos!


Desde lo alto de mi cabeza, creo que debería hacerse así:

var veggies = "carrot"; var fruitvegbasket = []; fruitvegbasket.push(veggies);



jQuery no es lo mismo que una matriz. Si desea agregar algo al final de un objeto jQuery, use:

$(''#fruit'').append(veggies);

o para agregarlo al final de un valor de formulario como en su ejemplo:

$(''#fruit'').val($(''#fruit'').val()+veggies);

En su caso, fruitvegbasket es una cadena que contiene el valor actual de #fruit , no una matriz.

jQuery ( jquery.com ) permite la manipulación de DOM y la función específica que llamó val() devuelve el atributo de value de un elemento de input como una cadena. No puedes poner algo en una cuerda.


.val() no devuelve una matriz desde un elemento DOM: $(''#fruit'') va a encontrar el elemento en el documento con un ID de #fruit y obtendrá su valor (si tiene un valor).