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.addClass始终无效原因分析
Sep 08 Javascript
整理的比较全的event对像在ie与firefox浏览器中的区别
Nov 25 Javascript
JQuery结合CSS操作打印样式的方法
Dec 24 Javascript
JS实现图片放大镜效果的方法
Feb 27 Javascript
Ext JS动态加载JavaScript创建窗体的方法
Jun 23 Javascript
jquery ajax异步提交表单数据的方法
Oct 27 jQuery
ReactNative之FlatList的具体使用方法
Nov 29 Javascript
JS脚本实现网页自动秒杀点击
Jan 11 Javascript
vue2.0 根据状态值进行样式的改变展示方法
Mar 13 Javascript
elementUI中Table表格问题的解决方法
Dec 04 Javascript
微信小程序实现slideUp、slideDown滑动效果及点击空白隐藏功能示例
Dec 11 Javascript
VUE-ElementUI 自定义Loading图操作
Nov 11 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
PHP4与PHP5的时间格式问题
2008/02/17 PHP
php在项目中寻找代码的坏味道(综艺命名)
2012/07/19 PHP
php动态实现表格跨行跨列实现代码
2012/11/06 PHP
php中如何防止表单的重复提交
2013/08/02 PHP
php解析http获取的json字符串变量总是空白null
2015/03/02 PHP
php版微信小店调用api示例代码
2016/11/12 PHP
msn上的tab功能Firefox对childNodes处理的一个BUG
2008/01/21 Javascript
JavaScript 设计模式 富有表现力的Javascript(一)
2010/05/26 Javascript
jQuery控制图片的hover效果(smartRollover.js)
2012/03/18 Javascript
javascript窗口宽高,鼠标位置,滚动高度(详细解析)
2013/11/18 Javascript
JS选项卡动态替换banner图片路径的方法
2015/05/11 Javascript
简单的jQuery入门指引
2015/07/28 Javascript
高效利用Angular中内置服务$http、$location等
2016/03/22 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
2016/06/14 Javascript
Vue 401配合Vuex防止多次弹框的案例
2020/11/11 Javascript
javascript实现京东快递单号的查询效果
2020/11/30 Javascript
python的迭代器与生成器实例详解
2014/07/16 Python
SQLite3中文编码 Python的实现
2017/01/11 Python
python基础练习之几个简单的游戏
2017/11/10 Python
pygame游戏之旅 添加游戏暂停功能
2018/11/21 Python
Python制作动态字符图的实例
2019/01/27 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
python zip,lambda,map函数代码实例
2020/04/04 Python
Django的ListView超详细用法(含分页paginate)
2020/05/21 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
纯CSS3实现绘制各种图形实现代码详细整理
2012/12/26 HTML / CSS
台湾团购、宅配和优惠券:17Life
2017/08/14 全球购物
瑞典的玛丽小姐:Miss Mary of Sweden
2019/02/13 全球购物
加拿大领先的时尚和体育零售商:Sporting Life
2019/12/15 全球购物
财会专业毕业生自荐信
2014/07/09 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
给朋友的道歉短信
2015/05/12 职场文书
mysql在项目中怎么选事务隔离级别
2021/05/25 MySQL
变长双向rnn的正确使用姿势教学
2021/05/31 Python
解决Mysql的left join无效及使用的注意事项说明
2021/07/01 MySQL
Django+Nginx+uWSGI 定时任务的实现方法
2022/01/22 Python