2017-11-03 8 views
-5

のpythonのコードは次のとおりです。どのように私はJavaScriptにPythonのコードを書き換えることができますか?

ツリーがある
def trimTree(tree): 
    p=tree[1] 
    if type(p) == type(""): return p 
    else : 
     return(trimTree(p[0]),trimTree(p[1])) 

[ 
    13, 
    [ 6, [ 3, [Object], [Object] ], [ 3, 'a' ] ], 
    [ 7, [ 3, 'b' ], [ 4, [Object], [Object] ] ] 
] 

私はエラーまし変換する場合:

TypeError: Cannot read property '0' of undefined

私は何をすべきか?いずれかのノードが二つの要素の長さだけを持って、あなたは呼吸最初の順序で値のリストを得ることを意味し、適切なデータ構造、(結果はここでは文字列である)で

+2

あなたはすでに試したJavascriptを含めるように、あなたの投稿を編集することはできますか?誰もが本当にあなたがこれまでに与えられたもののお手伝いをすることはできません。 – DaveyDaveDave

+0

は、私たちは、障害のあるjavascriptのコードがどのように見えるかを推測することになっています?このPythonのスニペットがあるだけでなく、全く関係のない(あなたの問題は、それが何か他のものから移植された天気をJavaScriptコードで、誰も気にしないで)だけでなく、非常に醜いと:申し訳ありませんが、私の水晶玉は...修理のため –

+0

ああ、はいFWIW出ています完全に壊れた。 –

答えて

0

function trimTree(tree) { 
 
    var p = tree[1]; 
 
    return typeof p === 'string' 
 
     ? p 
 
     : trimTree(p[0]) + trimTree(p[1]); 
 
} 
 

 
var data = [ 
 
     13, 
 
     [ 
 
      [6, 
 
       [ 
 
        [3, 
 
         [ 
 
          [1, 'X'], 
 
          [2, 'Y'] 
 
         ] 
 
        ], 
 
        [3, 'a'] 
 
       ] 
 
      ], 
 
      [7, 
 
       [ 
 
        [3, 'b'], 
 
        [4, 
 
         [ 
 
          [2, 'Z'], 
 
          [2, 'Q'] 
 
         ] 
 
        ] 
 
       ] 
 
      ] 
 
     ] 
 
    ]; 
 

 
console.log(trimTree(data));

関連する問題