資料
[, , , ]需求:需要根據動態的條件來對資料進行查詢。
步驟1:定義過濾器並初始化,比如我們要查詢王五以6分開頭的資料,條件定義:`姓名 equal 王五 && 成績 beginwith 6`
//步驟2:定義乙個通用的過濾函式,過濾函式傳遞2個引數,第1個是需要被過濾的資料來源,第2個是過濾器集合,函式返回值是過濾後的資料來源/ 過濾器集合,格式:
/// field - 用於過濾的屬性(字段)
/// relationtype - 關聯關係(比較方式),可選值有equal(等於)、notequal(不等於)、like(模糊匹配)、beginwith(以它開頭)、endwith(以它結尾)
/// value - 用於被比較的過濾器值
const filters =
filters.push()
filters.push()
//步驟3:呼叫過濾函式得到結果過濾資料來源
function
filteringdatasources (source, filters)
//獲取資料物件用於比較的屬性值,統一轉為字串型別,便於比較
objvalue =string(obj[item.field])
//判斷邏輯
if (item.relationtype === 'equal')
else
if (item.relationtype === 'notequal')
else
if (item.relationtype === 'like')
else
if (item.relationtype === 'beginwith')
else
if (item.relationtype === 'endwith')
//返回當前表示式是否符合條件
return
isfit
})})
//遍歷資料來源
source = source.filter((item, index) =>
}//返回當前資料物件是否符合條件,不符合條件則被過濾掉,不會出現在最終資料中
return
isfit
})//
返回過濾後的資料來源
return
source
}
if (filters.length > 0)結果:
array(1)完整**:0: length: 1
//ps:動態條件過濾來自於工作中的乙個需求過濾資料來源
function
filteringdatasources (source, filters)
//獲取資料物件用於比較的屬性值,統一轉為字串型別,便於比較
objvalue =string(obj[item.field])
//判斷邏輯
if (item.relationtype === 'equal')
else
if (item.relationtype === 'notequal')
else
if (item.relationtype === 'like')
else
if (item.relationtype === 'beginwith')
else
if (item.relationtype === 'endwith')
//返回當前表示式是否符合條件
return
isfit
})})
//遍歷資料來源
source = source.filter((item, index) =>
}//返回當前資料物件是否符合條件,不符合條件則被過濾掉,不會出現在最終資料中
return
isfit
})//
返回過濾後的資料來源
return
source
}let source =[, , , ]
/// 過濾器集合,格式:
/// field - 用於過濾的屬性(字段)
/// relationtype - 關聯關係(比較方式),可選值有equal(等於)、notequal(不等於)、like(模糊匹配)、beginwith(以它開頭)、endwith(以它結尾)
/// value - 用於被比較的過濾器值
const filters =
filters.push()
filters.push()
source =filteringdatasources(source, filters)
console.log(source)
過濾前:
過濾後:
js 清空array陣列
兩種實現方式 1.splice 刪除元素並新增新元素,直接對陣列進行修改,返回含有被刪除元素的陣列。arrayobject.splice index,howmany,element1,elementx index 必選,規定從何處新增 刪除元素。howmany 必選,規定應該刪除多少元素。未規定此引...
js 中的陣列Array
1 ecmascript 中的陣列與其他語言中的陣列有些不同,ecmascript中的陣列可以每一項都不同型別,陣列的大小可以動態調整。var colors new array var colors new array 20 var colors new array red blue green v...
Jquery 物件陣列Array根據字段排序
jquery在遍歷陣列array時,如果需要對其進行排序,會提供乙個方法 sort 但是這個只是針對string int這樣的原始型別的。如何對乙個物件陣列進行排序那?知識點 假設以物件陣列形式來儲存學生資訊。每個學生包括3個屬性 sid,sname,sage。請基於sid為該陣列排序。說明 sor...