У меня есть этот код:
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, но, похоже, это не работает. Есть идеи?
Другие возможности:
if(key.substr(key.lastIndexOf('.')) == ".subj") //or var suffix = '.subj'; if(key.lastIndexOf(suffix) == key.length - suffix.length)
См .: lastIndexOf
lastIndexOf
Свойство length возвращает количество элементов в массиве, и поскольку индекс равен нулю, элемент с таким индексом отсутствует.
length
Используйте length - 1, чтобы получить последний элемент:
length - 1
if (keysplit[keysplit.length - 1] === "subj") {