从数组中删除指定的值?

时间:2016-03-14 19:26:33

标签: javascript jquery arrays

我在localStorage中将ID数组设置为“收藏夹”,

var favIndex=$favourites.indexOf($titleId);
if(favIndex==-1){
    $favourites.push($titleId);
    $('#fav').addClass('favourited');
}
else{

    $('#fav').removeClass('favourited');
}

var favouritesJson=JSON.stringify($favourites);
localStorage.setItem('favourites',favouritesJson);
console.log(localStorage.getItem('favourites',favouritesJson));

如果数组中的值尚未添加,那么在else语句中我需要从数组中删除$ titleId,这是否可能,如果是这样的话?

3 个答案:

答案 0 :(得分:2)

使用splice方法删除给定索引中的n个元素:

if(favIndex==-1){
    $favourites.push($titleId);
    $('#fav').addClass('favourited');
} else {
    $favourites.splice(favIndex, 1);
    $('#fav').removeClass('favourited');
}

答案 1 :(得分:0)

使用此链接array.splice方法 http://www.w3schools.com/jsref/jsref_splice.asp

答案 2 :(得分:0)

var favoritesIndex = $favourites.indexOf($titleId)

if( favoritesIndex > -1 ) {
    $favourites.splice( favoritesIndex, 1 );
    $('#fav').removeClass('favourited');
}
else{
    $favourites.push($titleId);
    $('#fav').addClass('favourited');
}