开发者社区> 问答> 正文

关于JavaScript的in代码问题

function a(n){
if (isFinite(n)&& n>0&& n==Math.round(n)){
if(!(n in a))
a[n]=n*a(n-1)
return a[n]
}
else return NaN
}

有没有大触知道if(!(n in a))这行代码,a里会有属性名是n

展开
收起
云栖技术 2016-06-02 13:26:30 1739 0
1 条回答
写回答
取消 提交回答
  • 社区爱好者,专为云栖社区服务!

    n是a(n)这里传入的值
    a[n]=n*a(n-1) //从这里给a赋予属性n,看着应该是数字,
    if(!(n in a))判断这个的意思应该是没有a[n]数值或者数值为0,则重新计算递归

    2019-07-17 19:24:41
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
JavaScript面向对象的程序设计 立即下载
Delivering Javascript to World 立即下载
编程语言如何演化-以JS的private为例 立即下载