script-2つ抽出して追加


JavaScriptでエンコードテストを準備中です.
プログラマーの基礎から説明します.

質問する

  • プログラマー「2つを抽出して番号を付ける」

  • 答えを出す。


    次のソリューション.jsはSetオブジェクトの特性を用いて重複データを除去する.
  • const set = new Set(calculator);
    重複値を持つ計算機配列をSetオブジェクトとして作成し、重複を排除します.
  • const uniqueArr = [...set];
    展開演算子を使用してSetオブジェクトをアレイに変換します.
    展開演算子の代わりにArrayが使用されます.from()またはforEach()文も使用できます.
  • function solution(numbers) {
        var answer = [];
        answer = numbers; 
        var calculator = [];
        var idx = 0;
        
        while(idx != answer.length){
            for (var i = idx; i < answer.length; i++) {
                if(answer.length == i+1){
                    break;
                }
                else {
                    calculator.push(answer[idx]+answer[i+1]);
                }
            }             
            idx++; 
        }
        
        calculator.sort(function(a, b)  {
            if(a > b) return 1;
            if(a === b) return 0;
            if(a < b) return -1;
        });
        
        const set = new Set(calculator); 
        const uniqueArr = [...set];
        
        answer = uniqueArr
        
        return answer;
    }

    説明する。


    次のソリューション.jsはforEach()とinclude()を用いて重複データを除去した.
  • forEach()関数は、所与の配列を巡回し、配列内の要素として所与のコールバック関数
  • を実行する.
  • include()関数は、所与の配列が特定の値
  • を含むかどうかを検査する.
    function solution(numbers) {
        var answer = [];
        answer = numbers; 
        var calculator = [];
        var idx = 0;
        while(idx != answer.length){
            for (var i = idx; i < answer.length; i++) {
                if(answer.length == i+1){
                    break;
                }
                else {
                    calculator.push(answer[idx]+answer[i+1]);
                }
            }             
            idx++; 
        }
        let uniqueArr = [];
        calculator.forEach((element) => {
            if(!uniqueArr.includes(element)){
                uniqueArr.push(element)
            }
        })
        uniqueArr.sort(function(a, b)  {
            if(a > b) return 1;
            if(a === b) return 0;
            if(a < b) return -1;
        });
        console.log(uniqueArr)
        answer = uniqueArr
        return answer;
    }