编辑代码

function beanBackpack(beans, w) {
    beans = beans.sort((a, b) => b.price - a.price)
    let result = 0
    let available_w = w
    let path = []
    console.log(beans)

    for (let item of beans) {
        if (available_w >= item.gross) {
            result += item.gross * item.price
            path.push(`${item.name}-${item.gross}`)
            available_w -= item.gross
            console.log(result)
        } else {
            result += available_w * item.price;
            path.push(`${item.name}-${available_w}`)
            break;
        }
    }
    console.log(path)
    console.log(result)
    return result
}

const beans = [
    { name: '黄豆', price: 1, gross: 100 },
    { name: '绿豆', price: 3, gross: 30 },
    { name: '红豆', price: 2, gross: 60 },
    { name: '黑豆', price: 4, gross: 20 },
    { name: '青豆', price: 1.5, gross: 50 },
]

beanBackpack(beans, 100)