这是一道关于一个数可采用几次乘法,几次加法所得的题。有关递归

function test(target){
    		function test2(start,str){
    			if(start == target)
    				return str;
    			else if(start > target)
    				return null;
    			else
    				return test2(start+5,"("+str+"+5)"); 
    				    // ||test2(start*3,"("+str+"*3)");  
    				    //  采用注释内容可正常输出:(((1*3)+5)*3)	
    				    // ||这个运算符不是左边为true就不计算右边了吗,为什么会计算右边?		
    		}
    		return test2(1,"1");
    	}
    	console.log(test(24));    	


lalalaaaa
浏览 1050回答 1
1回答

stone310

test(24)代入test2(start+5,"("+str+"+5)");这个算出来的结果是null,所以就计算右边,如果你改成 test(26),那么就会计算左边表达式
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript