JSFiddle - React, Tailwind, and code Playground

HTML

<div class="container">
    <ul id="ingred"></ul>
    <a href="#" class="add-contact">+ Добавить ингредиент</a>
    <div id="sumAll"></div>
</div>

CSS

.container { margin-top: 10px; width: 340px; }
ul { margin:0; padding:0; }
#ingred > li { position:relative; list-style: none; }
#ingred > li > span {
    display:none;
    cursor:pointer;
    position:absolute;
    right: 5px;
    top: 0px;
    color: red;
}
#ingred > li:hover > span { display: inline-block; }
input { width:50px; }

JavaScript

var sakhar = [
    ['Карамель', 3.11, 0, 0.001, 0.777],
    ['Шоколад темный', 5.64, 0.054, 0.353, 0.526]
];
var orekhi = [
    ['Арахис', 5.82, 0.263, 0.452, 0.097],
    ['Грецкий орех', 6.75, 0.138, 0.613, 0.102],
    ['Миндаль', 6.78, 0.186, 0.577, 0.136],
    ['Семя подсолнечника', 6.09, 0.207, 0.529, 0.05],
    ['Фундук', 7.37, 0.161, 0.669, 0.099]
];

var cats = [
    [sakhar, 'Карамель, шоколад'],
    [orekhi, 'Орехи']
];

var sumId = [];
var sum = [];
var sumx = [];
var total = [];

$("#ingred").on("click", "span", function () {
    $(this).parent("li").remove();
    $("#ingred li").children('a').first().click();
});

$('body').on('keyup', 'input', function () {
    if ( sum[0] === 0 ){
        sum.shift();
        for ( var x in sum ){
            sumx.splice(x,1, sum[x])
        }
        sum.unshift();
        $('div#sumAll').append('<span><strong>Масса:</strong>'+sumx[0]+', <strong>кКал:</strong>'+sumx[1]+', <strong>Белки:</strong>'+sumx[2]+', <strong>Жиры:</strong>'+sumx[3]+', <strong>Углеводы</strong>:'+sumx[4]+'</span>');
    } else {
        sum.shift();
        if ( sumId.length <= 2 ){
            for ( var a in sumx ){
                console.log('sumx[a]:'+sumx+' sum[a]:'+sum);
                total.splice(a,1, sumx[a]+sum[a]);
                total[a] = Math.floor(total[a]*100)/100;
                sumx[a] = Math.floor(sumx[a]*100)/100;
                sum[a] = Math.floor(sum[a]*100)/100;
            }
            console.log('total (sumId <= 2):'+total);
        } else {
            //for ( var x in sumId ){
                console.log('total (sumId <= 2):'+total+' sum[a]:'+sum);
                for ( var c in total ){
                    total.splice(c,1, total[c]+sum[c]);
                    total[c] = Math.floor(total[c]*100)/100;
                    sumx[c] = Math.floor(sumx[c]*100)/100;
                    sum[c] = Math.floor(sum[c]*100)/100;
                }
                console.log('total (else):'+total);
            //}
         ...