Nie mogę zrozumieć, dlaczego w mojej funkcji nie zmienia się wartość zmiennej. Tutaj mój kod.JS nie ustawi zmienną po pętli
var count = function(datain){
let temparr = [],
countobj = {};
$.each(datain, function(key, val) {
console.log(temparr);
countobj.cost = +$(val).find("[name]").text();
console.log(countobj);
temparr.push(countobj);
console.log(temparr);
});
console.log(temparr);
return temparr;
};
let countarr = count(datain);
console.log(countarr);
Ta funkcja jest częścią funkcji, która odpala na sukces ajax, ajax i wywołuje niektóre wybrane zmiany. Datain - wynik ajax. Po raz pierwszy zadzwoń do tej funkcji działa dobrze, ale wszystkie inne pożary zwróci mi pierwszy raz ustawić countarr. Wszystkie dane w kluczu, val - poprawne, ale nie mogę zrozumieć, dlaczego "countarr" zwraca mi wynik pierwszego wywołania, a nie ponownie ustawia temparr wewnątrz funkcji. Dzięki za odpowiedź!
Dziękujemy! To wszystko dla mnie poprawne, a teraz widzę moje błędy! Jeszcze raz dziękuję! – Doom
Nice! Ale myślę, że możesz użyć drugiego argumentu w pliku Array.from, aby użyć implementacji mapy zamiast jawnie po kropce. – ajaykumar
@ajaykumar: Dobra uwaga! –