我的问题:下面的代码将一个值存储到 regId,当我再次单击按钮时,该值被覆盖。如何在 regId 中存储新值而不覆盖 regId 数组中的其他值?
$('.btn-joinContest').live('click', function(e){
if (Modernizr.localstorage) {
var id = getUrlVars()["id"],
regId = [ ],
currentList = localStorage["contest"];
if(currentList == null) {
console.log('first click add to local storage');
regId.push(id);
localStorage['contest']=JSON.stringify(regId);
}
else if (currentList.length === 0) {
console.log('store contains empty value');
regId.push(id);
localStorage['contest']=JSON.stringify(regId);
} else {
console.log('there is something in localstorage get it');
regId = JSON.parse(currentList);
// Search for a specified value within regId array and return its index
// (or -1 if not found).
if(jQuery.inArray(id, regId) > -1){
console.log('id is already in array');
} else {
console.log('add current id to localstorage');
regId.push(id);
localStorage['contest']=JSON.stringify(regId);
}
}
} else {
console.log('this browser does not support localstorage')
}
});