這個標題可能寫的不夠準確到能表達我的意思,
我遇到一個情形,
我有一個陣列,裡頭包含了監理站的代號,之前的寫法是用JS裡的Object.includes()去檢查輸入的數字是否在這個陣列裡頭,是就繼續執行後續的流程
const motorVehiclesOfficeIdList = [
21, 25, 26, 30, 31, 33, 40, 41, 43, 44, 45, 46, 50, 51, 52, 53, 54,
60, 61, 62, 63, 64, 65, 70, 71, 72, 73, 74, 75, 76, 80, 81, 82, 83,
84,
];
if (
motorVehiclesOfficeIdList.includes(dmvNo) === true
){
//pass
}
裝了JOI後,發現數字的檢查好像沒有includes,字串也沒有,就想用Regex來解決
最後是這麼寫的
dmvNo: Joi.string()
.pattern(
new RegExp(
"^.*21|25|26|30|31|33|40|41|43|44|45|46|50|51|52|53|54|60|61|62|63|64|65|70|71|72|73|74|75|76|80|81|82|83|84.*$"
)
)
.example("41")
.description("dmvNo")
.required()
有需要我再更新