Jquery shopping cart code review
This code style is not very good, becouse u declare functions inside a function. The problem with this is that you recreate all this functions every time u run "shoppingCart" function.

Instead try using this pattern;

(function(){

    //my private functions delare

    function recalculateCart(){
        ...
    }


    // my module public methods
    var myModule = {
        init: ...,
        shoppingCart: ...
    }

    return myModule;

})()