-
2つの配列を比較して、JavaScriptに同じ要素がいくつあるかを確認するにはどうすればよいですか?
たとえば、2つの配列があり、1つにはいくつかの質問の正解文字列が含まれ、もう1つには候補者が試行した回答が含まれていますが、どういうわけか配列がシャッフルされ、対応する順序で回答がありません。しかし、2つの質問が同じ答えを持っていなかったことは確かです。 私たちの仕事は、これら2つの配列を受け取り、それらの共通要素をチェックし、それらの間のすべての共通要素を見つけて、共通回答の数に基づいて候補のマークパーセンテージを計算する関数を作成することです。 この関数のコードを書いてみましょう- 例 const correct = ['India', 'Japan',
-
数nを取り、最初のn個の素数を持つ配列を生成するJavaScript関数
数値nを受け取り、最初のn個の素数を含む配列を返すJavaScript関数を作成する必要があります。素数とは、1でしか割り切れず、2、3、19、37、73などのようにそれ自体が割り切れる数であることを私たちは知っています。 まず、与えられた数が素数であるかどうかをチェックする関数を記述し、次にaloopを実行してn個の素数を生成します。素数をチェックするコード- const isPrime = (n) => { for(let i = 2; i <= n/2; i++){ if(n % i === 0){ &nb
-
数値がフィボナッチ数であるかどうかを確認するJavaScript
フィボナッチ数列に含まれるかどうかに基づいて、数値を取り込んでブール値を返すJavaScript関数を作成する必要があります。 例- 関数呼び出しが次のような場合- fibonacci(12); fibonacci(89); fibonacci(55); fibonacci(534); その場合、出力は-になります。 False true true false それでは、この問題の再帰的な解決策を書いてみましょう- 例 const fibonacci = (query, count = 1, last = 0) => { if(count < qu
-
JavaScriptで再帰を使用して配列を合計する修正バージョン
たとえば、Numbersの配列のすべての要素を合計する再帰関数を作成する必要がありますが、ひねりを加えると、作成する再帰関数は余分な変数(メモリ)を初期化できません。 変数を使用して合計を格納したり、配列のインデックスのカウントを保持したりすることはできないように、すでに持っているものを使用する必要があります。 これが解決策です- すでに配列があり、その最初の要素(つまり、再帰的な合計を保持するためにゼロ番目のインデックスにある要素)を使用できます。 アプローチは、配列から1つの要素を繰り返しポップし、1つの要素だけが残るまで、それを配列の最初の要素に追加することです。 要素が1つだ
-
配列の配列から、各項目がJavaScriptの対応するサブ配列内のすべての項目の合計である配列を返します
配列の配列が与えられ、各配列には一連の数値が含まれています。各項目が対応するサブ配列内のすべての項目の合計である配列を返す関数を作成する必要があります。 例- 入力配列が-の場合 const numbers = [ [1, 2, 3, 4], [5, 6, 7], [8, 9, 10, 11, 12] ]; その場合、関数の出力は-になります。 const output = [10, 18, 50]; それでは、この関数のコードを書いてみましょう- 例 const numbers = [ &nb
-
JavaScriptでwhileループを使用して連続番号の最長のサブ配列を検索します
正の整数の配列で最大の連続するサブ配列の長さを決定するwhileステートメントを使用して関数を作成する必要があります。 たとえば- 入力配列が-の場合 const input = [6, 7, 8, 6, 12, 1, 2, 3, 4] --> [1,2,3,4] その場合、出力は-になります。 4 入力配列が-の場合 const input = [5, 6, 1, 8, 9, 7] --> [8,9] その場合、出力は-になります。 2 したがって、この関数のコードを書いてみましょう- 例 const arr = [6, 7, 8, 6, 12, 1, 2, 3, 4
-
JavaScriptで次のうるう年を見つける
正の整数nを取り、次のnleap年の配列を返す関数を作成する必要があります。この問題を3つの部分に分けます- パート1:JSを介して現在の年を見つける JSを介して現在の年を見つけるためのコードは-になります // getting the current year from a new instance of Date object const year = new Date().getFullYear(); パート2:うるう年の確認 ここで、数値を受け取り、うるう年であるかどうかに基づいてブール値を返す関数isLeap()を記述します。 これら2つの条件の少なくとも1つが満たされた場合
-
逆和配列JavaScript
Numbersの2つの配列を取り込んで、1番目と2番目に、を含む新しい配列を返すreverseSum()などの関数を作成する必要があります。 最初の配列の最初の要素と2番目の配列の最後の要素の合計を最初の要素として 最初の配列の2番目の要素と2番目の配列の最後から2番目の要素の合計など。 配列のいずれかが他の配列よりも先に要素を使い果たした場合、残りのすべての要素を配列にプッシュするだけです。したがって、この関数のコードを書いてみましょう- 例 const first = [23, 5, 7, 2, 34, 7, 8]; const second = [2, 4, 21, 4
-
ネストされた配列JavaScriptの簡素化
たとえば、次のような要素を含む配列の配列があるとします- const arr = [3, 5, 7, 2, [4, NaN, null, 4, 8, [3, undefined, 24, null], null, 5, 1], NaN, 45, 2, 1]; 私たちの仕事は、このネストされた配列を受け取り、配列内のすべてのfalevalues(NaN、undefined、null)を0に置き換える再帰関数を作成することです。 したがって、この関数のコードを書いてみましょう- 例 const arr = [3, 5, 7, 2, [4, NaN, null, 4, 8, [3, undefi
-
JavaScriptで最も近い回文
数値nを受け取り、数値nに最も近い回文数を返す関数、たとえば、neastPalindrome()を作成する必要があります。 例- 入力番号が264の場合、出力は262になります。 入力番号が7834の場合、出力は7887になります。 基本的には、数値を2つに分割し(長さ)、前半を2回連結した新しい数値を返します。 例 const findNearestPalindrome = num => { const strNum = String(num); const half = strNum.substring(0, M
-
最後に指定した数の要素を配列JavaScriptの前にシフトします
たとえば、配列関数を作成する必要があります。たとえば、数値n(n <=関数が使用される配列の長さ)を取り、最後からn個の要素を取り、それらを配列の前に配置するprependN()を記述します。 これを適切に行う必要があり、関数はタスクの正常な完了または失敗に基づいてブール値のみを返す必要があります。 例- // if the input array is: const arr = ["blue", "red", "green", "orange", "yellow", "mage
-
文字列内の繰り返し文字の最大数を取得するにはどうすればよいですか? JavaScript
このような繰り返し文字を含む文字列があります- const a = "fdsfjngjkdsfhhhhhhhhhhhfsdfsd"; 私たちの仕事は、astreak内の連続する最大の同じ文字の数を返す関数を作成することです。上記の文字列のように、文字hは11回連続して表示されるため、関数はこの文字列に対して11を返す必要があります。 この問題は、このスライディングウィンドウアルゴリズムの適切な候補です。ここで、安定したウィンドウは、連続する文字を含むウィンドウであり、異なる要素を含むウィンドウは不安定です。ウィンドウは、最後に新しい文字を追加し、で繰り返し文字を削除する
-
JavaScriptをソートせずに配列から2番目の最小要素を取得する
数値の配列があり、配列から2番目に小さい値を返す関数を作成する必要があります。 たとえば、-配列が-の場合 const arr = [67, 87, 56, 8, 56, 78, 54, 67, 98, 56, 54]; その場合、出力は次のようになります- 54 54は8以降の最小値であるため 例 const arr = [67, 87, 56, 8, 56, 78, 54, 67, 98, 56, 54]; const minimumIndex = arr => { return arr.indexOf(Math.min(...arr)); }; co
-
配列の合計:JavaScriptでの再帰とforループとES6メソッドの比較
たとえば、多数のNumberエントリを持つ配列があり、再帰にかかる時間と単純なループにかかる時間と、ES6関数が配列のすべてのエントリを合計するのにかかる時間(再帰vsforループvsES6関数)を比較する必要があるとします。 。 ここでは、大きな配列をシミュレートするために、比較的小さな配列を多数回(10000000のオーダー)繰り返します。私たちの主な目的は、各メソッドが配列を合計するのにかかる時間の大まかな比率を設定することです。 パート1:再帰的アプローチ const recursiveSum = (arr, len = 0, sum = 0) => { &nbs
-
配列JavaScriptで最大の反復アイテムを取得する
いくつかの値を含む数値/文字列リテラルの配列があります(いくつかは繰り返しです)。私たちの仕事は、配列内で最も多く出現する配列から要素を返す関数を作成することです。 たとえば、-入力配列が-の場合 const input = ['a', 'v', 'k', 'f', 'a', 'f', 's', 'd', 'd', 'f', 'a', 'j', 'a']; その場合、出力は-になります
-
JavaScriptで2つのオブジェクトを比較し、類似性のパーセンテージを表す0〜100の数値を返します
たとえば、次のような2つのオブジェクトがあります- const a = { Make: "Apple", Model: "iPad", hasScreen: "yes", Review: "Great product!", }; const b = { Make: "Apple", Model: "iPad",  
-
JavaScriptでシャーロックと配列の問題を解決する
ワトソンはシャーロックに長さNの配列Aを与えます。次に、左側の要素の合計が右側の要素の合計と等しくなるように、配列に要素が存在するかどうかを判断するように求めます。 この関数を作成する必要があります。Numbersの配列を取り、そのような数値が配列に存在する場合は、インデックスを返す必要があります。そうでない場合は、-1を返す必要があります。それでは、この関数のコードを書いてみましょう- 例 const arr = [1, 2, 3, 4, 5, 7, 3]; const arr2 = [4, 6, 3, 4, 5, 2, 1]; const isSherlockArray = arr =&
-
2つの文字列を組み合わせる代わりにJavaScriptに数学を強制する方法は?
たとえば、文字列の配列があります。基本的には、次のような数値文字列の配列です- const arr = ['3', '3', '55', '23', '67', '43', '12', '67', '87', '12']; 文字列を相互に連結するのではなく、そのような配列を1つ取り込んで、この配列のすべての要素の合計を返すJavaScript関数を作成する必要があります。 この関数のコードを書いてみましょう- 例 const arr
-
与えられたポイントJavaScriptから始まる配列からn個の数値を取得します
最初に3つの引数をとる配列関数(Array.prototype.get())を作成する必要があります。数値n、2番目は数値、たとえばm(m <=配列の長さ-1)、2番目は文字列です。 leftまたはrightの2つの値のいずれかを持つことができます。 この関数は、インデックスmから始まり、左や右などの指定された方向にn個の要素を含む元の配列のサブ配列を返す必要があります。 例- // if the array is: const arr = [0, 1, 2, 3, 4, 5, 6, 7]; // and the function call is: arr.get(4, 6, 'r
-
JavaScriptの配列から一意で最大の文字列値を検索する
たとえば、次のようなオブジェクトの配列があります- 例 const arr = [ {text:'use'}, {text: 'secur'}, {text: 'form'}, {text: 'user'}, {text: 'users'}, {text: 'form'}, {text: 'secur'}