angular - 如何检查字符串(当前 URL)是否包含一些子字符串
问题描述
我需要检查当前 URL 是否包含一些子字符串。我的代码有效,但如果可以让它变得更好,我需要一个提示。我意识到复制代码不是一个好习惯。我正在使用 Angular 6/Typescript/ECMAScript 6。
const currentUrl = this.location.path();
const displayTile = currentUrl.includes('/search-resources') || currentUrl.includes('/calendar') || currentUrl.includes('/yearbooks')? 1 : 2;
解决方案
您的代码很好,如果您想减少检查的长度,请将子字符串放在数组中。喜欢:
var substrings = ['/search-resources', '/calendar', '/yearbooks']
使用以下方法测试您的状况:
const displayTile = substrings.some((e) => currentUrl.includes(e)) ? 1 : 2
some() 方法测试数组中的至少一个元素是否通过了提供的函数实现的测试。
推荐阅读
- r - 在 R 中创建一个函数返回一个绘图
- python - 计算来自(矩阵 - 常数)的矩阵的快速方法
- python - 我正在从 csv 文件导入数据并尝试在 python 中显示为图像,但图像显示不正确
- c - fgets 的返回值到主函数中
- c++ - 使用 include 保护和 #pragma once 重新定义 C++
- python - 将数据从 S3 读入 pandas 的最佳方法
- php - CentOS 7 中的 Imagick/Imagemagick 安装问题
- html - 如何移动 Svg 图标?
- ios - Swift - 在超类的覆盖函数中返回子类类型
- javascript - 如何使用 sequelize 在一个数据库请求中将数据插入多个表?