1
這是我的函數,它是對象的一部分,它接受來自搜索字段的搜索項作爲arg,該搜索字段使用toString()
方法轉換爲字符串。搜索可以由逗號分隔的關鍵字組成,例如「雲計算,數據,安全」重複項的數組問題
$('form').on('submit', function() {
var searchVal = [$("#cc-search--field").val().trim().toLowerCase()];
$("#cc-search--field").val('');
// vo.sTerms.push(searchVal.toString());
vo.addspinner();
vo.f_constructURL(searchVal.toString());
});
f_constructURL: function (searchterms) {
var self = this,
rank = self.f_rank,
url = self.f_url;
if (self.filter_searchterms.length == 0) {
self.filter_searchterms.push(searchterms.split(","));
} else if (self.filter_searchterms.length > 0) {
// reset the array
self.filter_searchterms = [];
self.filter_searchterms.push(searchterms.split(","));
};
$.grep(self.filter_searchterms, function (e, i) {
if (self.f_searchterms.length == 0) {
if ($.inArray(e, self.f_searchterms) === -1) self.f_searchterms.push(e);
} else if (self.f_searchterms.length > 0) {
if ($.inArray(e, self.f_searchterms) === -1) self.f_searchterms.push(e);
}
});
}
能正常工作在第一次運行,但是當我搜索相同期限再次用不同的關鍵字如配對「安全,JavaScript的」結果f_searchterms
具有
[
[ "cloud", "data", "security" ],
[ "security", " javascript" ]
]
在隨後的運行中,我想消除重複的關鍵字,並且只向f_searchterms
添加唯一關鍵字,結果應該看起來像一個包含#n
元素的單個數組。
[
[ "cloud", "data", "security", "javascript" ]
]
謝謝你的回覆彌敦道,但我想問你一個問題。 – Vish
@VISH我在聽你:)關於數組聲明的 –
self.filter_searchterms = new Array();與self.filter_searchterms = [];相比隱式數組和數組構造函數有區別嗎? – Vish