Object.values ​​не поддерживается в Internet Explorer - PullRequest
0 голосов
/ 17 октября 2018

Я написал код JavaScript для своего проекта.Этот код работает нормально для всех браузеров, кроме Internet Explorer.

в Internet Explorer он говорит:

Объект не поддерживает свойство или метод 'values'

Вот мой код

Object.values(products.reduce(function(c, v) {
                c[v.budget] = c[v.budget] || {id: v.budget,remainingBudget: v.remainingBudget,total: 0};
                c[v.budget].total += parseFloat(v.unitPrice)*parseFloat(v.quantity);
                return c;
              }, {})).filter(function (o) {return o.remainingBudget < o.total})

Я провел некоторые исследования и разработки, и в нем говорится, что вместо Object.values ​​используются Object.keys.Но я не могу переписать свой код.

Кто-нибудь может мне помочь переписать мой код для Internet Explorer?

1 Ответ

0 голосов
/ 17 октября 2018
 Try something like this    var obj = products.reduce(function(c, v) {
                    previousPayment = typeof v.previous_unit_price != 'undefined' ? v.previous_unit_price : 0;
                    c[v.budget_id] = c[v.budget_id] || {id: v.budget_id,remainingBudget: parseFloat(v.remainingBudget),total: 0, previousPayment: 0};
                    c[v.budget_id].previousPayment += parseFloat(previousPayment);
                    c[v.budget_id].total += parseFloat(v.unit_price)*parseFloat(v.quantity);
                    return c;
                  }, {})
                var result = Object.keys(obj).map(function(e) {
                    return obj[e]
                  }).filter(function (o) {return (o.remainingBudget + o.previousPayment) < o.total})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...