With your example of 3 you have the following: #1: is n == 1? no. is n == 2? So return (n-1)+(n-2)… return (3-1=2) + (3-2=1)… return 3. #2: is n == 1? no. is n == 2? So return (getNthFib(n-1)+getNthFib(n-2))…
return (getNthFib(3-1=2)+getNthFib(3-2=1))… each of these evalute so you have
return ((getNthFib(2) = 1, because if n==2, return 1) + (getNthFib(1) = 0, because if n==1 return 0)…
return (1 + 0)… return 1