我創建了一個過濾器函式來過濾電子表格中的某些代碼。然而,這個串列非常非常長(比如大約 50 個),當我添加一堆“else ifs”時,Google 不喜歡它并且函式失敗了。
var bldgFilter = function(item) {
if(item[1] == "TA12") {
return true;
} else if (item[1] == "DA06") {
return true;
} else {
return false;
}
}
但是,當我嘗試這個時,它根本不起作用。有什么我想念的嗎?
var bldgFilter = function(item) {
if(item[1] == "TA12" || "DA06") {
return true;
} else {
return false;
}
}
這是原始陣列,我正在嘗試過濾掉在第二個位置包含某些元素的一維陣列:
[[123730, PH02, 1245, 1745, 1630, 1.0], [122857, PH01, 1300, 1800, 2145, 1.0], [125116, TA12, 1300, 1800, 1830, 1.0], [1223077, DA04, 1 1830, 2230, 1.0], [124376, VP02, 1400, 1900, 2300, 1.0], [119588, SC03A, 1430, 1930, 2230, 1.0], [122248, MP01, 1430, 1930, [, 2330, 1.0] 124551, VG02, 1630, 2130, 1900, 1.0], [125130, DA06, 1630, 2130, 0230, 2.0], [122979, SY01, 1700, 2200, 2300, 1.0], [1234337, PH03, 172 0300, 1.0], [124137, BA06, 1730, 2230, 0130, 1.0], [124953, BA09, 1730, 2230, 0300, 3.0]]
uj5u.com熱心網友回復:
一個更好的方法是這樣的:
const data = [[123730, 'PH02', 1245, 1745, 1630, 1.0], [122857, 'PH01', 1300, 1800, 2145, 1.0], [125116, 'TA12', 1300, 1800, 1830, 1.0], [122077, 'DA04', 1330, 1830, 2230, 1.0], [124376, 'VP02', 1400, 1900, 2300, 1.0], [119588, 'SC03A', 1430, 1930, 2230, 1.0], [122248, 'MP01', 1430, 1930, 2330, 1.0], [124551, 'VG02', 1630, 2130, 1900, 1.0], [125130, 'DA06', 1630, 2130, 0230, 2.0], [122979, 'SY01', 1700, 2200, 2300, 1.0], [123437, 'PH01', 1730, 2230, 0300, 1.0], [124137, 'BA06', 1730, 2230, 0130, 1.0], [124953, 'BA09', 1730, 2230, 0300, 3.0]]
const matches = ['TA12', 'DA06'];
const filtered_data = data.filter(x => matches.includes(x[1]))
console.log(filtered_data)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/494434.html
標籤:谷歌应用脚本
