2011-12-07 24 views
0

私は希望の文字列の代わりにundefinedを返す単純な再帰関数を持っています。誰かが私に何が欠けているか教えてくれますか?未定義関数から返されました

var someString = 'item1|item2|item3|item4'; 
     console.log(testData(someString, '|', 2)); 

     function testData(data, token, count) { 
      console.log(data); 
      if(count == 0) { 
       return data; 
      } else { 
       testData(data.substring(data.indexOf(token) + 1), token, count - 1); 
      } 
     } 

答えて

1

あなたelse句でreturn文を忘れてしまった:

else { 
    return testData(data.substring(data.indexOf(token) + 1), token, count - 1); 
} 
+0

このように機能しました。 – stavarotti

0

あなたしかreturncount場合0です。

returntestData()の前に貼り付けることをお勧めします。