>我正在使用一个类别数组,即CategoryListSearch
其中包含各种类别,如移动电子产品、珠宝等。
正在使用一个文本框在该文本框中,我插入了一个像 iPhone 这样的值,那么我如何从我的手机所属类别移动的列表中匹配。 我用这个作为示例
if (txt != '') {
$.each(CategoryListSearch, function(i, o) {
});
但不知道如何比较CategoryListSearch
的文本值。
请帮忙!
试试这个
if(CategoryListSearch.indexOf(text) > -1) {
//text is present
}
像这样.使用三元运算符(?:)
内部循环。
if (txt != '') {
$.each(CategoryListSearch, function(i, o) {
var present = (o == txt) ? "Item present in list" : "No item in list";
console.log(present);
}
});
假设你的对象是树状结构的,下面的函数首先检查我们是否在搜索对象本身。如果没有,则对其进行迭代,我们搜索索引/成员。
getCategoryPath(obj, item) {
if (obj === item) {
return obj;
}
for (index in obj) {
if ((typeof obj[index] === "undefined") || (obj[index] === null)) {
//irrelevant leaf
} else if (typeof obj[index] === "object") {
var ret = getCategoryPath(obj[index], item);
if (ret) {
return ret.unshift(index);
}
} else if ((obj[index] === item) || (index === item)) {
return [index];
}
}
}