如何递归地反转字符串

Fil*_* DO 0 javascript recursion

前几天我正在接受采访,并被要求编写一种递归反转字符串的方法.

我开始编写一种调用自身并卡住的方法.

以下是我的问题,在JavaScript中递归反转字符串"Obama".

这是我有多远.

function reverseString(strToReverse)
{

         reverseString(strToReverse);

};
Run Code Online (Sandbox Code Playgroud)

并且卡住了,他们说i循环没有.

有人有任何想法吗?

Pau*_*oub 5

看看这样说:颠倒字符串将开始与原来的最后一个字母,然后是所有,但最后一个字母,颠倒.

所以:

function reverseString(strToReverse)
{
  if (strToReverse.length <= 1)
    return strToReverse;

  // last char +
  // 0 .. second-last-char, reversed
  return strToReverse[strToReverse.length - 1] + 
    reverseString( strToReverse.substring(0, strToReverse.length - 1) );
}
Run Code Online (Sandbox Code Playgroud)