当前位置: 首页 > news >正文

ps网站子页怎么做软文广告怎么写

ps网站子页怎么做,软文广告怎么写,湛江免费建站模板,网站开发方案服装网站简介概览 在 JavaScript 中,递归是一种编程技术,指的是函数直接或间接调用自身的过程。 递归通常用于解决可以分解为相同子问题的问题。通过不断地将问题分解成更小的、相似的子问题,直到达到某种基本情况(不再需要进一步递归的简单情…

概览

在 JavaScript 中,递归是一种编程技术,指的是函数直接或间接调用自身的过程。
递归通常用于解决可以分解为相同子问题的问题。通过不断地将问题分解成更小的、相似的子问题,直到达到某种基本情况(不再需要进一步递归的简单情况)。

递归一般要满足以下两个关键条件:

  1. 存在基本情况(终止条件):必须有某种简单的情况,在这种情况下递归不再继续进行,避免无限递归导致程序崩溃。
  2. 能够不断将问题规模缩小:通过递归调用自身,要能逐步将问题转化为更小的、相似的子问题,直到最终达到基本情况。

一. 常见应用

  1. 递归计算阶乘
function factorial(n) {if (n === 0 || n === 1) {return 1;} else {return n * factorial(n - 1);}
}

当递归终止后,从内到外依次执行。

  1. 一维数组转成树形结构
const arr = [{id: 4, pid: 3},{id: 'aa', pid: 'a'},{id: 1, pid: null},{id: 3, pid: 2},{id: 'a', pid: 'a0'},{id: 2, pid: 1},{id: 'a0', pid: null}
];function buildTreeData(arr,parentId = null) {const result = [];const rootFilterArray = arr.filter(item => item.pid === parentId);debugger;if(rootFilterArray.length > 0 ) {rootFilterArray.forEach(subitem => {debugger;const children = buildTreeData(arr,subitem.id);if(children.length > 0 ) {subitem.children = children}result.push(subitem)});}return result
}const resData = buildTreeData(arr);
console.log(resData,'resData')
  1. 查找树形结构子项
const checkTestData = [{"id": 1,"pid": null,"children": [{"id": 2,"pid": 1,"children": [{"id": 3,"pid": 2,"children": [{"id": 4,"pid": 3,"children": []}]}]}]},{"id": "a0","pid": null,"children": [{"id": "a","pid": "a0","children": [{"id": "aa","pid": "a","children": []}]}]}
]function getItemById(arr,id) {for(let item of arr) {debugger;if(item.id === id) {return item} else if(item.children) {const data = getItemById(item.children,id);if(data) {return data}}}
}const resDataItem = getItemById(checkTestData,3);
console.log(resDataItem,'resDataItem')

二. 总结

关键点梳理:

  1. 递归终止条件确定: 即没有调用自身的函数。
  2. 递归终止后结果的获取:有的时候直接返回最终的递归结果,有的时候拿到每次递归的结果之后由内至外依次进行逻辑处理。
http://www.tj-hxxt.cn/news/102981.html

相关文章:

  • 网站开发合同的缺陷可以直接进入的舆情网站
  • 厦门企业网站建设补贴百度收录刷排名
  • 磁盘阵列做网站如何提升网站搜索排名
  • 网站的论坛怎么做的参考网是合法网站吗?
  • 移动应用与开发是干什么的seo视频教程我要自学网
  • 游戏网站建设方案书百度公司销售卖什么的
  • 天权网站建设企业邮箱查询
  • 曲靖网站建设公司网站设计公司哪家专业
  • 模拟网站效果百度官方平台
  • 网站建设毕业设计任务书seo优化培训班
  • 中文网站模板免费下载网上推广的平台有哪些
  • 在招聘网站做电话销售怎么样公司网页怎么做
  • 大气集团网站最近新闻事件
  • 自己做的一个网站怎么赚钱销售找客户的方法
  • python如何做简单的网站近三天的国内外大事
  • 企业网站 制作seo的方式有哪些
  • 之梦系统怎么修改网站标头图片怎么创作自己的网站
  • 利用百度网盘自动播放做视频网站新媒体运营培训班
  • seo网站制作公司调查公司
  • 一个服务器可以做两个网站吗torrentkitty磁力猫
  • 管理咨询公司vbnmseo关键词优化技术
  • 坪山做网站公司宁波品牌网站推广优化
  • 个人网站设计成品网络优化行业的发展前景
  • 企业网站优化怎么做关键词优化是什么意思
  • 安卓系统开发公司aso优化排名推广
  • 做旅游网站的yi成都网站排名生客seo怎么样
  • wordpress不能登录后台seo接单一个月能赚多少钱
  • 怎样在网站做转向连接0元免费做代理
  • 做网站可以用哪些语言最大的中文搜索引擎
  • 网站开发大概需要多少钱化妆品网络营销策划方案