javascript - javascript - if and or (||) 语句
问题描述
if (window.location.pathname == "/" || window.location.pathname == "/yyy.asp") {
runSlideShow();
}
if (
window.location.pathname == "zzzz.html" ||
window.location.pathname == "/xxx.html"
) {
runSlideShow();
}
如何合并if语句,以便只有一个{runSlideShow();}
而不是两个;
目前我似乎不能有两个以上的带有 || 的 window.location.pathname 语句 介于两者之间。
解决方案
可以合并您的条件并显着减少您的代码。
if (['/', '/yyy.asp', 'zzzz.html', '/xxx.html'].includes(location.pathname))
runSlideShow();
或者,对于它来说,更短但可读性/可扩展性更低:
if (/^(?:(\/(yyy\.asp|xxx\.html)?)|zzzz\.html)$/.test(location.pathname))
推荐阅读
- delphi - 如何配置 Delphi RAD Server 以接受承载授权方案?
- java - 即使编译了 jvm,什么样的测试用例也会使我的 java 程序崩溃?
- flutter - Flutter,自定义“表单包装器”
- python - 如何改进深度学习回归模型的预测
- c# - 2.5d瞄准在右方向而不是左方向
- perl - Hashref 分配消耗下一个键而不是分配 undef
- indentation - 如何在 Vivado 中启用缩进指南?
- javascript - TypeError:无法读取未定义的属性“getElementById”
- reactjs - 当后退按钮导航在 Safari 或 Firefox 上不起作用时滚动到顶部
- redhat - RHEL 7.9 Maipo 中没有可用的软件包 llvm-toolset-7.0