迭代和递归的区别
递归是逆向思维,利用函数的关系,从上往下推导到最初的值后,然后逆着再把最终结果求出来;
迭代是正向思维,利用原值依次推算出最终值
~程序调用自身称为递归,利用变量的原值推出新值称为迭代,递归的优点大问题转化为小问题,可以减少代码量,同时应为代码精简,可读性好,缺点就是,递归调用浪费了空间,而且递归太深容易造成堆栈的溢出。迭代的好处就是代码运行效率好,因为时间只因循环次数增加而增加,而且没有额外的空间开销,缺点就是代码不如递归简洁
参考:https://blog.csdn.net/laoyang360/article/details/7855860
https://www.cnblogs.com/xiaozhumaopao/p/4121372.html
举例说明js中常用的迭代方法:
forEach map some every