首页 > 编程语言 > 详细

js deepEqual & shallowEqual 小算法实现

时间:2019-12-15 09:33:38      阅读:115      评论:0      收藏:0      [点我收藏+]

1
function deepEqual(x, y) { 2 if (x === y) { 3 return true; 4 } else if ((typeof x == "object" && x != null) && (typeof y == "object" && y != null)) { 5 if (Object.keys(x).length != Object.keys(y).length) 6 return false; 7 8 for (var prop in x) { 9 if (y.hasOwnProperty(prop)) { 10 if (!deepEqual(x[prop], y[prop])) 11 return false; 12 } 13 else 14 return false; 15 } 16 17 return true; 18 } 19 else 20 return false; 21 }
 1 function shallowEqual(x, y) {
 2   if (x === y) {
 3     return true;
 4   } else if ((typeof x == "object" && x != null) && (typeof y == "object" && y != null)) {
 5     if (Object.keys(x).length != Object.keys(y).length)
 6       return false;
 7 
 8     for (var prop in x) {
 9       if (y.hasOwnProperty(prop)) {
10         if ((x[prop] !== y[prop]))
11           return false;
12       }
13       else
14         return false;
15     }
16 
17     return true;
18   }
19   else
20     return false;
21 }

 

js deepEqual & shallowEqual 小算法实现

原文:https://www.cnblogs.com/ajaxkong/p/12009209.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!