【发布时间】:2022-02-03 07:06:17
【问题描述】:
我已经编写了搜索查询过滤器,但它对我来说似乎很复杂而且很长,我想还有另一种编写方式。那么你能举出你的例子吗?
return this.myCourses.filter(c => {
return c?.purchased_course?.title.toLowerCase().startsWith(this.searchQuery) ||
c?.purchased_course?.user?.first_name.toLowerCase().startsWith(this.searchQuery) ||
c?.purchased_course?.user?.last_name.toLowerCase().startsWith(this.searchQuery)
})
【问题讨论】:
-
如果此代码有效,则不是此问题的地方使用 codereview.stackexchange.com
-
这样的?
this.myCourses.filter(course => [c?.purchased_course?.title, c?.purchased_course?.user?.first_name, c?.purchased_course?.user?.last_name].any(textStartsWith.bind(this.searchQuery)));辅助函数:function textStartsWith(text) { return typeof text === "string" && text.startsWith(this); }
标签: javascript filter