全相等函数 isEqual
手写全相等函数 isEqual
, 限制:{}
,[]
思路:递归层层对比
// 判断obj是否为对象
function isObject(obj) {return (typeof obj === 'object' && obj !== null);
}//全相等函数
function isEqual(obj1, obj2) {//如果其中一个不为对象,则判断两个是否严格相等if (!isObject(obj1) || !isObject(obj2)) {return obj1 === obj2;}// 到了这里说明两个都是对象// 先判断引用是否相等if (obj1 === obj2) {return true;}//判断两个对象中的键的个数是否相同if (Object.keys(obj1).length !== Object.keys(obj2).length) {return false;}// 以obj1 为基准,递归判断obj1和obj2中的元素是否相等for (let key in obj1) {const res = isEqual(obj1[key], obj2[key]);// 一层层递归比较,只要有一项不同,就中断并返回falseif (!res) {return false;}}// 递归比较全相等return true;
}const obj1 = {a: 1,b: {x: 'aa',y: 'bb',z: 'cc'},c: [1, 2, 3]
}
const obj2 = {a: 1,b: {x: 'aa',y: 'bb',z: 'cc'},c: [1, 2, 3]
}console.log(isEqual(obj1, obj2)); // true
全相等函数 isEqual相关推荐
- python中全组合函数(combinations)与全排列函数(permutations)
最近写代码时遇到排列组合问题,发现python中的itertools库用起来比较方便.itertools库中的permutations函数可以输出可迭代对象的全排列情况,而combinations函数 ...
- python中全组合函数(combinations)与全排列函数(permutations)的介绍与参数说明
概要:在平常的编程过程中,往往需要面对排列组合的应用情况,而每次自己编写相应的函数会耗费较多的时间,而python中的itertools库就为我们解决了这个小问题.itertools库中的permut ...
- [问题已处理]-vscode 自动补全的函数没有括号
vscode 自动补全的函数没有括号 mac解决方法 打开vscode 选择 code 选择 首选项 选择设置 搜索关键子Commit 然后选择git-commit下面的在settings.json中 ...
- JavaScript 全选函数的实现
Html代码: <table id="purchase-info" class="table table-bordered table-hover table-st ...
- 最全Python函数总结和应用(超详细+建议收藏),基本所有内置函数,心得都在这了,踩的坑也在里面了,最后还有函数的魂
希望能帮助到你 前言 基础的函数了解 惊喜类 all() 和 any() lambda函数 sorted()函数 map()函数 filter()函数 reduce()函数 eval()函数 zip函 ...
- 讴 mysql 首字母_汉字转全拼音函数优化方案(SQLServer),值得你看看
去年1月份时写了一篇关于优化汉字转拼音函数的解决方案,当时重点在于优化所举案例只能解决汉字转为拼音的首字母. 前不久收到这样一条短消息 随之我从(CSDN,CNBLOG,51CTO等)搜了几个解决方案 ...
- 一秒换一张图 以及checkbox全选函数
类似效果: setInterval(函数,时间间隔):时间间隔最小设置为1000,相当于一秒执行一次函数 2000=2s 依次类推 . onfocus 得到光标 onblur失去光标或失去焦点. & ...
- Excel汉语全拼函数,批量获得汉字的拼音
首先我们看下面的例子,要给自家宝宝学习这几个国家的汉语拼音,那你有没有想到其实Excel中方方格子插件里的汉语拼音函数是可以批量获得这些拼音的 (方方格子插件) 1.请看动图演示 2.输入拼音函数,注 ...
- 求和第一个算到最后一个周末求_Excel最全求和函数—sum家族系列
Excel中有很多求和函数,包括SUM.SUMIF.SUMIFS.SUMPRODUCT等等,下来用实例介绍这些函数的具体用法与区别. SUM函数 表达式:SUM(number1,[number2],- ...
- 29. 大数据---hive的常用函数(一(最全的函数操作))
Hive 内部提供了很多函数给开发者使用,包括数学函数,类型转换函数,条件函数,字符函数,聚合函数,表生成函数等等,这些函数都统称为内置函数. 在 hive 中可通过以下命令查看函数信息: –显示所有 ...
最新文章
- 计算机保密工作自查自评报告,2020年保密工作自查自评报告
- centos7-yum安装与卸载
- 每天一道LeetCode-----给定一个矩阵,如果某个元素是0,就将所在行所在列上所有元素否置0
- CodeForces - 976F Minimal k-covering
- Qt工作笔记-moveToThread的基本使用以及让线程安全退出
- java控制器_Java用户界面 模型-视图-控制器(MVC)模式
- 数据结构之栈与递归的实现及应用(斐波拉契数列递归解法和strlen递归解法)
- Linux内核:Gigantic巨页与CMA的结合的PATCH补丁提交
- 人工智能TensorFlow工作笔记010---TensorFlow 游乐场游戏,了解神经网络主要功能作用_工作流程
- ubuntu之安装typora
- 走进内存,走进汇编指令来看C/C++指针
- ubuntu14.04 下 mysql 存储目录迁移
- 手把手教你快速构建自定义分类器
- 离散数学自反与反自反
- 国际知名芯片专家,加盟武昌理工学院人工智能学院
- 31: Nginx代理服务器 、 Nginx优化 、 总结和答疑
- 激活后服务器无限重启,服务器无限重启
- 【ERP知识】一个VMI(供应商管理库存)实现方案
- nopi 缩小字体填充_我在超市里改字体
- LruCache的基本用法