在 JavaScript 中寻找字符串数组中的字符组合


我们必须编写一个函数,该函数接受一个字符串数组和一个字符串。我们的工作是检查数组是否包含该字符串的任何序列或子序列作为其元素,并且该函数应基于此事实返回一个布尔值。

例如 −

const x = 'ACBC';
const arr = ['cat','AB'];
const arr2 = ['cat','234','C'];
const arr3 = ['cat','CC'];
const arr4 = ['cat','BB'];
console.log(containsString(arr,x)) // true
console.log(containsString(arr2,x)) // true
console.log(containsString(arr3,x)) // true
console.log(containsString(arr4,x)) // false

因此,让我们为该函数编写代码 −

示例

const x = 'ACBC';
const arr = ['cat','AB'];
const arr2 = ['cat','234','C'];
const arr3 = ['cat','CC'];
const arr4 = ['cat','BB'];
const splitSort = function(){
   return this.split("").sort().join("");
};
String.prototype.splitSort = splitSort;
const containsString = (arr, str) => {
   const sorted = str.splitSort();
   for(let i = 0; i < arr.length; i++){
      const sortedEl = arr[i].splitSort();
      if(sorted.includes(sortedEl)){
         return true;
      }
   };
   return false;
}
console.log(containsString(arr,x)) // true
console.log(containsString(arr2,x)) // true
console.log(containsString(arr3,x)) // true
console.log(containsString(arr4,x)) // false

输出

控制台中显示的输出将是 −

true
true
true
false

更新于: 2020 年 8 月 25 日

98 次浏览

开启您的 职业生涯

完成课程获得认证

开始
广告
© . All rights reserved.