为了账号安全,请及时绑定邮箱和手机立即绑定

如果不用return searchNode(node.right, key);而用searchNode(node.right, key);返回的是undefined,谁可以解释一下

var searchNode = function (node, key) {

if (node === null) {

return false;

}

if (key < node.key) {

return searchNode(node.left, key);

} else if (key > node.key) {

return searchNode(node.right, key);

} else {

return true;

}

}


正在回答

4 回答

JavaScript高级程序设计第三版67页,3.8小结:实际上未指定返回值的函数返回的是一个特殊的undefined值。

1 回复 有任何疑惑可以回复我~

递归,顾名思义,递推和回归,如果只有函数调用,那么就只是递推了,必须要有return才是回归。

0 回复 有任何疑惑可以回复我~

你应该是函数内的search方法调用的searchNode吧,而你的search方法没有设置返回值,返回的就是undefined


0 回复 有任何疑惑可以回复我~

你在 递归里面 必须return 啊 

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

如果不用return searchNode(node.right, key);而用searchNode(node.right, key);返回的是undefined,谁可以解释一下

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信