【剑指Offer刷题:JavaScript实现】求1+2+3+...+n

题目描述
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。

相关知识点

  • JavaScript逻辑运算符
    【剑指Offer刷题:JavaScript实现】求1+2+3+...+n_第1张图片
    能被转换为false的值有null, 0, NaN, 空字符串("")和undefined。
  • 逻辑操作符示例
    【剑指Offer刷题:JavaScript实现】求1+2+3+...+n_第2张图片
  • 短路求值
    作为逻辑表达式进行求值是从左到右,它们是为可能的“短路”的出现而使用以下规则进行测试:
    false && anything // 被短路求值为false
    true || anything // 被短路求值为true

解题思路:递归实现

代码实现

function Sum_Solution(n)
{
     
    // write code here
    let res = 0;
    n==0 || (res=Sum_Solution(n-1));
    return res+n;
}

你可能感兴趣的:(前端面试,剑指Offer)