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

做网站什么用网站如何做注册类 cpa

做网站什么用,网站如何做注册类 cpa,WordPress防伪证书插件,开发个直播app软件多少钱博主:東方幻想郷 Or _LJaXi 专栏分类:JavaScript | 脚本语言 JavaScript 递归 - 判断两个对象的键值 🌕 起因🌓 代码流程⭐ 第一步 判断两个对象的长度是否一致⭐ 第二步 循环 obj 进行判断两个对象⭐ 第三步 递归条件判断两个对象…

在这里插入图片描述

博主:東方幻想郷 Or _LJaXi
专栏分类:JavaScript | 脚本语言

JavaScript 递归 - 判断两个对象的键值

  • 🌕 起因
  • 🌓 代码流程
    • ⭐ 第一步 判断两个对象的长度是否一致
    • ⭐ 第二步 循环 obj 进行判断两个对象
    • ⭐ 第三步 递归条件判断两个对象深层次对象
    • ⭐ 第四步 判断两个对象的值是否相同
    • ⭐ 第五步 若以上步骤都不符合,返回true
  • 🌑 完整代码

🌕 起因

记得当时我是有写过一个判断两个对象内的键值手否相同的文章
使用 md5-js 判断两个对象键值是否相同
但是当时比较菜,递归也看不太懂,所以就用了别人的包

🌓 代码流程

💨 💨💨 首先明确一下需求
首先要有两个 Object
封装一个方法来判断两个对象内的keys,并且要支持深层次判断

⭐ 第一步 判断两个对象的长度是否一致

首先 声明一个判断对象的方法,我们就叫他 objectsComparison,提供两个形参: obj_one,obj_two
理一下思路:既然要判断两个对象中的每一项 且 每一项中的深层次对象都一致的话

1.⚡先判断两个对象keys的长度是否相同

function objectsComparison(obj_one, obj_two) {// 判断两个对象的key长度是否一致,若不一致返回false// 此时 key 长度不会监听到深层次的keyif (Object.keys(obj_one).length !== Object.keys(obj_two).length) {return false}
}

⭐ 第二步 循环 obj 进行判断两个对象

  1. ⚡判断两个对象的 prop 是否为 object
function objectsComparison(obj_one, obj_two) {// 判断两个对象的key长度是否一致,若不一致返回false// 此时 key 长度不会监听到深层次的keyif (Object.keys(obj_one).length !== Object.keys(obj_two).length) {return false}// 循环对象,判断每一项for (let prop in obj_one) {// 判断两个对象每一项是否为objectif (typeof obj_one[prop] === 'object' && typeof obj_two[prop] === 'object') {} }
}

⭐ 第三步 递归条件判断两个对象深层次对象

  1. ⚡递归条件判断两个对象的深层次对象是否符合本方法的所有条件,若不符合,返回false
function objectsComparison(obj_one, obj_two) {// 判断两个对象的key长度是否一致,若不一致返回false// 此时 key 长度不会监听到深层次的keyif (Object.keys(obj_one).length !== Object.keys(obj_two).length) {return false}// 循环对象,判断每一项for (let prop in obj_one) {// 判断两个对象每一项是否为objectif (typeof obj_one[prop] === 'object' && typeof obj_two[prop] === 'object') {// 使用递归条件监听两个深层次的对象if (!objectsComparison(obj_one[prop], obj_two[prop])) {return false}} }
}

⭐ 第四步 判断两个对象的值是否相同

  1. ⚡判断两个对象值是否相同,不相同返回false
function objectsComparison(obj_one, obj_two) {// 判断两个对象的key长度是否一致,若不一致返回false// 此时 key 长度不会监听到深层次的keyif (Object.keys(obj_one).length !== Object.keys(obj_two).length) {return false}// 循环对象,判断每一项for (let prop in obj_one) {// 判断两个对象每一项是否为objectif (typeof obj_one[prop] === 'object' && typeof obj_two[prop] === 'object') {// 使用递归条件监听两个深层次的对象if (!objectsComparison(obj_one[prop], obj_two[prop])) {return false}// 对象键不相等,也会返回false} else if (obj_one[prop] !== obj_two[prop]) {return false}}
}

⭐ 第五步 若以上步骤都不符合,返回true

function objectsComparison(obj_one, obj_two) {// 判断两个对象的key长度是否一致,若不一致返回false// 此时 key 长度不会监听到深层次的keyif (Object.keys(obj_one).length !== Object.keys(obj_two).length) {return false}// 循环对象,判断每一项for (let prop in obj_one) {// 判断两个对象每一项是否为objectif (typeof obj_one[prop] === 'object' && typeof obj_two[prop] === 'object') {// 使用递归条件监听两个深层次的对象if (!objectsComparison(obj_one[prop], obj_two[prop])) {return false}// 对象键不相等,也会返回false} else if (obj_one[prop] !== obj_two[prop]) {return false}}// 若以上条件都不成立,返回true,两个对象完全一致return true
}

🌑 完整代码

function objectsComparison(obj_one, obj_two) {if (Object.keys(obj_one).length !== Object.keys(obj_two).length) {return false}for (let prop in obj_one) {if (typeof obj_one[prop] === 'object' && typeof obj_two[prop] === 'object') {if (!objectsComparison(obj_one[prop], obj_two[prop])) {return false}} else if (obj_one[prop] !== obj_two[prop]) {return false}}return true
}

🌠 以上是 使用递归 判断连个对象是否完全一致的判断方法
🌠 希望能够帮助到你

http://www.yayakq.cn/news/437548/

相关文章:

  • 用vs2013做网站案例桃源网站建设
  • 冲电气软件 网站建设重庆网站优化排名推广
  • pc端网站模型建设工具商标设计公司推荐
  • 租用网站服务器价格销售易crm官网登录
  • 在线做爰a视频网站十堰seo优化报价
  • 德阳高端网站建设小游戏网页
  • 网站建设哪个公司做得好门户网站建设需求文档
  • 西安有几家做网站长沙景点怎么预约
  • 重庆网站推广机构网站建设物美价廉
  • 生鲜超市营销策划方案成都做网站优化价格
  • 做网站比较好的公司做外贸需要什么条件
  • 学习怎么做网站如何打开网页源代码
  • 上海优化seo小辉seo
  • 手机网站建站用哪个软件好新网站百度收录要几天
  • 深圳建网站泉州seo优化
  • 做一个官方网站多少钱常州公司网站建设多少钱
  • 网站开发思维导图嵌入式累还是程序员累
  • 建设什么网站可以上传视频安徽省工程建设工程信息网站
  • 路桥做网站的公司有哪些网站续费服务商
  • 广告协会网站建设方案wordpress 卖票的插件
  • 石家庄网站seo服务济南网站建设推荐企优互联不错
  • 太原营销型网站开发公司自渠工作感悟
  • 滨州网站建设模板建设wordpress多级筛选
  • 西昌建设工程招聘信息网站什么网站可以找人做设计
  • 汉中网站建设电话网站服务器分流怎么做
  • 不关闭网站备案爱站seo工具包下载
  • 常州网站建设团队wordpress 创建报错
  • ps做网站logo设置多少国家查企业信息查询平台
  • 公司网站怎么做百度竞价建筑网校有哪些
  • 网站网页设计教程工商银行建设银行招商银行网站