1
resposta

Como passar array como parametro de uma função.

Tenho a seguinte funcao

function setStock(args){
           for (var i = 0; i < args.length; i++) {
             console.log("entrou")
           }
        }

E chamo usando:

setStock(window.product_stock);

Construo meu array dentro de um loop usando a linha:

window.product_stock.push({id: product.id, stock: instock});

Meu array tá certo e consigo vê-lo usando um console.log, o problema está quando eu passo ele como argumento da função setStock, onde o args.length retorna 0.

Existe alguma maneira específica para passar array para uma função?

1 resposta

Fala Leandro, tudo bom?

Eu fiz um teste aqui onde declarei um array normal:

let array = [{id:"product", stock:"stock"}];

testei o push:

array.push({id:"product2", stock:"stock2"});

e passei como parametro na sua function, mudando-a para imprimir o array:

function setStock(args){
           for (var i = 0; i < args.length; i++) {
             console.log(args[i]);
           }
        }

Obtive a saída esperada, que foram os objetos do array.

Tente mudar seu código e criar uma variável(array) para armazenar os pushs, e veja se dá certo, ou manda seu código completo que a gente ve o que pode ser!

Abs,