簡體   English   中英

arr.splice(開始,直到)-我做錯了什么?

[英]arr.splice(begin, until) - What am I doing wrong?

這是我的基本設置(當然是javascript):

var bookmark = {
    ...
        deleteBookmark: function(_id) {
            var oldbookmarks = this.readBookmarks();
            var begin = oldbookmarks.indexOf(_id);
            if (begin > -1) {
                var newbookmarks = oldbookmarks.splice(begin, 1);
                localStorageService.set('bookmarks', newbookmarks);
            }
        },
    ...
};

注意:到今天為止,它一直運行良好。 突然之間, newbookmarks沒什么區別,它是一個僅包含_id的書簽id的數組。

環境:
瀏覽器:最新版Chrome,Firefox
服務器:通過Express的節點0.12.2
框架: AngularJS,Yeoman,Angular-Fullstack Generator

等一下。 在編寫問題的過程中,我進行了一些研究,發現編寫此規范的人可能是白痴。 這是因為splice方法返回了數組中已刪除的元素-這意味着它是一個運算符,而不是一個函數。

上面的更正用法是:

var bookmark = {
    ...
        deleteBookmark: function(_id) {
            var oldbookmarks = this.readBookmarks();
            var begin = oldbookmarks.indexOf(_id);
            if (begin > -1) {
                oldbookmarks.splice(begin, 1);
                localStorageService.set('bookmarks', oldbookmarks);
            }
        },
    ...
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM