簡體   English   中英

使用帶有通配符的jquery grep搜索對象數組

[英]Searching array of objects using jquery grep with wildcards

我正在使用jquery grep搜索一個對象數組,並希望在搜索中包含通配符。 例如,我有一個數組如下:

courses = [
{code: 'ENCH3TH', otherFields: otherStuff},
{code: 'ENCH3THHS1', otherFields: otherStuff},
{code: 'ENCH3TH2', otherFields: otherStuff},
{code: 'ENCH4RT', otherFields: otherStuff},
{code: 'ENCH4MT', otherFields: otherStuff}]

我想用ENCH3TH前綴獲得所有課程。 我試過了

var resultSet = $.grep(courses, function(e){ return e.code == 'ENCH3TH/'; });

..無濟於事(請注意在'ENCH3TH'之后使用'/'作為通配符)。

你可以在這里使用String.indexOf()=不能用於野外字符

var resultSet = $.grep(courses, function (e) {
    return e.code.indexOf('ENCH3TH') == 0;
});

演示: 小提琴

或者使用正則表達式

var regex = /^ENCH3TH/
var resultSet = $.grep(courses, function (e) {
    return regex.test(e.code);
});

演示: 小提琴

暫無
暫無

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

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