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 相关文章推荐
jQuery在html有效在jsp无效的原因及解决方法
Aug 02 Javascript
jQuery学习笔记之 Ajax操作篇(三) - 过程处理
Jun 23 Javascript
javascript基于DOM实现省市级联下拉框的方法
May 14 Javascript
简单谈谈javascript Date类型
Sep 06 Javascript
Highcharts学习之数据列
Aug 03 Javascript
node.js中module.exports与exports用法上的区别
Sep 02 Javascript
jQuery实现的无缝广告图片左右滚动功能详解
Dec 24 Javascript
Angular企业级开发——MVC之控制器详解
Feb 20 Javascript
AngularJS1.X学习笔记2-数据绑定详解
Apr 01 Javascript
vue 实现全选全不选的示例代码
Mar 29 Javascript
JS实现的字符串数组去重功能小结
Jun 17 Javascript
vue 微信扫码登录(自定义样式)
Jan 06 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中CURL方法curl_setopt()函数的参数分享
2013/01/19 PHP
Zend Framework教程之响应对象的封装Zend_Controller_Response实例详解
2016/03/07 PHP
php数组遍历类与用法示例
2019/05/24 PHP
Laravel解决nesting level错误和隐藏index.php的问题
2019/10/12 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
document.compatMode介绍
2009/05/21 Javascript
jquery toolbar与网页浮动工具条具体实现代码
2014/01/12 Javascript
JavaScript onkeydown事件入门实例(键盘某个按键被按下)
2014/10/17 Javascript
JavaScript获取数组最小值和最大值的方法
2015/06/09 Javascript
jQuery中$.ajax()和$.getJson()同步处理详解
2015/08/12 Javascript
基于JavaScript实现单选框下拉菜单添加文件效果
2016/06/26 Javascript
利用Bootstrap实现表格复选框checkbox全选
2016/12/21 Javascript
jQuery实现动态文字搜索功能
2017/01/05 Javascript
JS图片延迟加载插件LazyImgv1.0用法分析【附demo源码下载】
2017/09/04 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
2018/09/10 Javascript
js根据json数据中的某一个属性来给数据分组的方法
2018/10/08 Javascript
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
2018/12/19 Javascript
layui form表单提交后实现自动刷新
2019/10/25 Javascript
Node使用koa2实现一个简单JWT鉴权的方法
2021/01/26 Javascript
Python迭代用法实例教程
2014/09/08 Python
python 处理dataframe中的时间字段方法
2018/04/10 Python
Python 正则表达式 re.match/re.search/re.sub的使用解析
2019/07/22 Python
python实现猜数字游戏
2020/03/25 Python
Numpy将二维数组添加到空数组的实现
2019/12/05 Python
浅谈pandas dataframe对除数是零的处理
2020/07/20 Python
Python request post上传文件常见要点
2020/11/20 Python
英国排名第一的礼品体验公司:Red Letter Days
2018/08/16 全球购物
英国蜡烛、蜡烛配件和家居香氛购买网站:Yankee Candle
2018/12/12 全球购物
舞会礼服和舞会鞋:PromGirl
2019/04/22 全球购物
时尚、社区、科技:SEVENSTORE
2019/04/26 全球购物
字符串str除首尾字符外的其他字符按升序排列
2013/03/08 面试题
JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
2015/10/22 面试题
2014庆六一活动方案
2014/03/02 职场文书
2014年冬季防火方案
2014/05/21 职场文书
社保代办委托书怎么写
2014/10/06 职场文书
家庭暴力离婚起诉书
2015/05/18 职场文书