Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptを使用して、文字列が配列内の文字列の組み合わせであるかどうかを確認します


最初の引数として文字列の配列を取り、2番目の引数として文字列を受け取るJavaScript関数を作成する必要があります。

関数は、2番目の引数で指定された文字列が、可能な方法で配列の文字列を組み合わせることによって形成できるかどうかをチェックする必要があります。

例-入力配列が-

の場合
const arr = ["for","car","keys","forth"];

そして文字列は-

です
const str = "forthcarkeys";

文字列は配列の3、1、2インデックスの要素の組み合わせであるため、出力はtrueになります。

このためのコードは-

になります
const arr = ["for","car","keys","forth"];
const str = "forthcarkeys";
const checkPossibility = (str = '', arr = []) => {
   let possibilities = arr.reduce(function (r, a) {
      let p = str.indexOf(a);
      while (p !== −1) {
         r.push({ word: a, position: p });
         p = str.indexOf(a, p + 1);
      }
      return r;
   }, []);
   const findRecursively = (i, t) => {
      let s = t.slice(), j;
      if (i === possibilities.length) {
         return !t.join('');
      }
      if (possibilities[i].word.split('').every(function (c, j) {
         return
         s[j + possibilities[i].position] !== ''; })) {
         for (j = 0; j < possibilities[i].word.length; j++) {
            s[j + possibilities[i].position] = '';
         }
      }
      return findRecursively(i + 1, s) || findRecursively(i + 1, t);
   }
   return findRecursively(0, str.split(''));
};
console.log(checkPossibility(str, arr));

出力

そして、コンソールの出力は-

になります
true

  1. ユーザーが入力した文字列がJavaScriptの配列に含まれているかどうかを確認します

    ユーザーに文字列値を入力するための入力を提供するJavaScriptプログラムを作成する必要があります。 次に、プログラムは入力値をハードコードされた配列値と照合する必要があります。入力文字列値が配列に含まれている場合、プログラムは画面にtrueを出力し、含まれていない場合はfalseを出力する必要があります。 例 このためのコードは-になります <!DOCTYPE html> <html> <head>    <meta charset="utf-8">    <meta n

  2. 文字列の2次元配列を並べ替え、JavaScriptを使用して対角要素を見つける

    問題 n個の文字列の配列を受け取るJavaScript関数を作成する必要があります。また、配列内の各文字列は正確にn文字で構成されています。 この関数は、最初に配列をアルファベット順にソートする必要があります。次に、左上隅から始まる主対角線に存在する文字によって形成された文字列を返します。 例 以下はコードです- const arr = [    'star',    'abcd',    'calm',    'need' ]; const s