Как сложить все переменные массива
Нашел функцию для сложения всех элементов, reduce(), но почему-то при использовании ее, у меня вместо того, чтобы сложились все переменные в массиве, выводит
0[object Object][object Object][object Object][object Object][object Object][object Object][object Object][object Object][object Object][object Object][object Object]
const app = new Vue({
el: '#app',
data() {
return {
Count: [{banana: 128}, {apple: 128}, {pich: 128}, {watermallon: 128}, {plum: 128}],
}
},
methods: {
totalCount () {
return this.Count.reduce((acc, n) => {
return acc += n
}, 0)
}
},
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<div id="app">
<div class="price">
{{totalCount()}}
</div>
</div>
Ответы (1 шт):
Автор решения: Алексей Шиманский
→ Ссылка
В данном конкретном случае можно сделать так
this.Count..reduce((acc, n) => {
return acc += Object.values(n)[0]
}, 0)
Но это решает проблему исключительно массива объектов, в котором будет один ключ с одним значением.