JavaScript 部分匹配数组内的字符串


const arr = ['be-', 'fe-', 'automated'];
const str = 'fe-cheese';
const oi = arr.includes(str) ? 'cheese' : 'meat';
console.log(oi);

我有一个部分匹配数组,我想检查字符串是否包含arr中的任何部分。

以上返回meat何时应匹配fe-并返回cheese

您可以使用Array.some.它将遍历数组,如果任何迭代返回 true,则返回 true。注意:这具有短路执行的额外好处,这意味着一旦到达返回 true 的第一次迭代,它就不会继续其余的迭代,因为它们是不必要的。

const arr = ['be-', 'fe-', 'automated'];
const str = 'fe-cheese';
const oi = arr.some(a => str.indexOf(a) > -1) ? 'cheese' : 'meat';
console.log(oi);

验证提供的字符串中是否存在至少一个元素 (indexOf(。

最新更新