Javascript判断对象是否相等实现代码


Posted in Javascript onMarch 18, 2013

在做表单页面的时候,想判断2个js对象,是不是所有完全相同。
这里是stackoverflow上的解决办法,在这里记录一下。

Object.prototype.equals = function(x) 
{ 
var p; 
for(p in this) { 
if(typeof(x[p])=='undefined') {return false;} 
} 
for(p in this) { 
if (this[p]) { 
switch(typeof(this[p])) { 
case 'object': 
if (!this[p].equals(x[p])) { return false; } break; 
case 'function': 
if (typeof(x[p])=='undefined' || 
(p != 'equals' && this[p].toString() != x[p].toString())) 
return false; 
break; 
default: 
if (this[p] != x[p]) { return false; } 
} 
} else { 
if (x[p]) 
return false; 
} 
} 
for(p in x) { 
if(typeof(this[p])=='undefined') {return false;} 
} 
return true; 
}
Javascript 相关文章推荐
SWFObject 2.1以上版本语法介绍
Jul 10 Javascript
js保存当前路径(cookies记录)
Dec 14 Javascript
google jQuery 引用文件,jQuery 引用地址集合(jquery 1.2.6至jquery1.5.2)
Apr 24 Javascript
js change,propertychange,input事件小议
Dec 20 Javascript
javascript获得服务器端控件的ID的实现代码
Dec 28 Javascript
JavaScript控制网页平滑滚动到指定元素位置的方法
Apr 17 Javascript
详解jQuery移动页面开发中的ui-grid网格布局使用
Dec 03 Javascript
浅谈jQuery双事件多重加载的问题
Oct 05 Javascript
Websocket协议详解及简单实例代码
Dec 12 Javascript
jQuery实现的checkbox级联选择下拉菜单效果示例
Dec 26 Javascript
详解vue中使用微信jssdk
Apr 19 Javascript
关于JavaScript数组去重的一些理解汇总
Sep 10 Javascript
jQuery+css实现图片滚动效果(附源码)
Mar 18 #Javascript
jquery获取特定name所有选中的checkbox,支持IE9标准模式
Mar 18 #Javascript
javascript定时变换图片实例代码
Mar 17 #Javascript
JS前端框架关于重构的失败经验分享
Mar 17 #Javascript
利用jQuery的deferred对象实现异步按顺序加载JS文件
Mar 17 #Javascript
提交表单时执行func方法实现代码
Mar 17 #Javascript
javascript中this做事件参数相关问题解答
Mar 17 #Javascript
You might like
PHP Memcached + APC + 文件缓存封装实现代码
2010/03/11 PHP
YII2自动登录Cookie总是失效的解决方法
2017/06/28 PHP
js验证整数加保留小数点的简单实例
2013/12/02 Javascript
浅谈javascript的分号的使用
2015/05/12 Javascript
AngularJS实现全选反选功能
2015/12/08 Javascript
AngularJS 自定义过滤器详解及实例代码
2016/09/14 Javascript
浅谈开发eslint规则
2018/10/01 Javascript
JS执行控制之节流模式实例分析
2018/12/21 Javascript
微信小程序自定义带价格显示日历效果
2018/12/29 Javascript
nodejs微信开发之自动回复的实现
2019/03/17 NodeJs
vue2配置scss的方法步骤
2019/06/06 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
2019/10/12 Javascript
微信小程序 scroll-view 水平滚动实现过程解析
2019/10/12 Javascript
JS XMLHttpRequest原理与使用方法深入详解
2020/04/30 Javascript
Python连接phoenix的方法示例
2017/09/29 Python
Python2和Python3中print的用法示例总结
2017/10/25 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
python图片二值化提高识别率代码实例
2019/08/24 Python
pyecharts绘制中国2020肺炎疫情地图的实例代码
2020/02/12 Python
Python调用REST API接口的几种方式汇总
2020/10/19 Python
详解win10下pytorch-gpu安装以及CUDA详细安装过程
2021/01/28 Python
亚马逊中国官方网站:amazon.cn
2017/05/25 全球购物
下面这个程序执行后会有什么错误或者效果
2014/11/03 面试题
Linux文件操作命令都有哪些
2015/02/27 面试题
AJAX的全称是什么
2012/11/06 面试题
竞职演讲稿范文
2014/01/11 职场文书
运动会开幕式解说词
2014/02/05 职场文书
党员个人对照检查材料
2014/10/01 职场文书
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
迎新生欢迎词
2015/01/23 职场文书
丧事答谢词大全
2015/09/30 职场文书
Python基础详解之邮件处理
2021/04/28 Python
Oracle11g R2 安装教程完整版
2021/06/04 Oracle
MySQL修炼之联结与集合浅析
2021/10/05 MySQL
Python list列表删除元素的4种方法
2021/11/01 Python
MySQL的存储函数与存储过程的区别解析
2022/04/08 MySQL