Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
463 views
in Technique[技术] by (71.8m points)

jquery - How do I update specific key value of the local storage array?

I have a local storage array like below

pageItems  = {"stationID":"145","categoryID":"-1","pickupDate":"2014-04-22","pickupTime":"08:00","returnDate":"2014-04-23","returnTime":"08:00","milage":"false","miles":"","attributes":[[],[]],"additionals":[[],[]]}

I need to update categoryID value to 65

pageItems  = {"stationID":"145","categoryID":"65","pickupDate":"2014-04-22","pickupTime":"08:00","returnDate":"2014-04-23","returnTime":"08:00","milage":"false","miles":"","attributes":[[],[]],"additionals":[[],[]]}
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Try this

var pageItems = {
            "stationID": "145",
            "categoryID": "-1",
            "pickupDate": "2014-04-22",
            "pickupTime": "08:00",
            "returnDate": "2014-04-23",
            "returnTime": "08:00",
            "milage": "false",
            "miles": "",
            "attributes": [[], []],
            "additionals": [[], []]
};

function setObject(key, obj) {
    localStorage.setItem(key, JSON.stringify(obj));
}

function getObject(key) {
    return JSON.parse(localStorage.getItem(key));
}

function updateItem(key, property, value)
{
    var obj = getObject(key);
    obj[property] = value;    
    setObject(key, obj);
}

//set object to sessionStorage
setObject('test', pageItems);

//update object property in sessionStorage
updateItem('test', 'categoryID', 65);

//get object from sessionStorage
getObject('test');

Here is the Demo


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...