2010-11-24 17 views
0

我有這樣的代碼:這是選擇具有「.subj」結尾的元素的正確方法嗎?

for(var i=0; i < localStorage.length; i++) { 
    var subjects = []; 

    var key, value; 
    key = localStorage.key(i); 
    value = localStorage.getItem(key); 

    var keysplit = key.split("."); 

    if(keysplit[keysplit.length] == "subj") { 
     subjects.push(value); 
    } 

} 

我想選擇所有有.subj結局的關鍵,但這似乎並沒有工作。有任何想法嗎?

+0

你想keysplit一個變種太多,大概 – 2010-11-24 22:42:39

+0

@seanizer我只是這樣做,它並沒有幫助 – chromedude 2010-11-24 22:44:38

回答

1

length屬性返回數組中項目的數量,並且由於索引爲零,因此沒有該索引的項目。

使用length - 1得到最後一個項目:

if (keysplit[keysplit.length - 1] === "subj") { 
1

其他可能性:

if(key.substr(key.lastIndexOf('.')) == ".subj") 
//or 
var suffix = '.subj'; 
if(key.lastIndexOf(suffix) == key.length - suffix.length) 

參見:lastIndexOf

相關問題