2017-07-20 5 views
1

現在、問題が発生しています。私は[1,2、[3]]、4] - [1,2,3,4]を作ろうとしていますが、動作させることはできません。私は入れません出力は次のようになります。1,2,3,4 1,2,3 3 .......... 3Flatten関数を使用しない入れ子配列のフラット化

function flattenArray(input) { 
var result = []; 
console.log(input.toString()); 
     for(i = 0; i < input.length; i++) { 
      if(input[i].constructor === Array) { 
      result.push(flattenArray(input[i])); 
     } else { 
      result.push(input[i]); 
    } 
} 
    return result; 
} 

console.log(flattenArray([[1,2,[3]],4])); 

答えて

1

私はこれを持っています私のcommon.jsファイル。私はいつも使っています。

ここでは、関数として次のとおりです。

function flattenArray(input) { 
    console.log(input.toString()); 
    var ret = []; 
    for (var i = 0; i < input.length; i++) { 
     if (Array.isArray(input[i])) { 
      ret = ret.concat(flattenArray(input[i])); 
     } else { 
      ret.push(input[i]); 
     } 
    } 
    return ret; 
} 
関連する問題