هل ستكون هذه هي الطريقة الصحيحة لاختيار العناصر التي تنتهي ".subj"؟
-
28-09-2019 - |
سؤال
لدي هذا الرمز:
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 ، لكن هذا لا يبدو أنه يعمل. أيه أفكار؟
المحلول
ال length
تقوم الخاصية بإرجاع عدد العناصر الموجودة في المصفوفة ، وبما أن الفهرس يستند إلى الصفر ، لا يوجد عنصر بهذا الفهرس.
يستخدم length - 1
للحصول على العنصر الأخير:
if (keysplit[keysplit.length - 1] === "subj") {
نصائح أخرى
احتمالات أخرى:
if(key.substr(key.lastIndexOf('.')) == ".subj")
//or
var suffix = '.subj';
if(key.lastIndexOf(suffix) == key.length - suffix.length)
نرى: lastIndexOf
لا تنتمي إلى StackOverflow