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 相关文章推荐
Packer 3.0 JS压缩及混淆工具 下载
May 03 Javascript
jQuery live( type, fn ) 委派事件实现
Oct 11 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
Feb 01 Javascript
jQuery实现友好的轮播图片特效
Jan 12 Javascript
AngularJS中的Directive自定义一个表格
Jan 25 Javascript
JS声明式函数与赋值式函数实例分析
Dec 13 Javascript
浅谈原生JS中的延迟脚本和异步脚本
Jul 12 Javascript
webpack-dev-server自动更新页面方法
Feb 22 Javascript
vue.js移动数组位置,同时更新视图的方法
Mar 08 Javascript
Angular数据绑定机制原理
Apr 17 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
Dec 02 Javascript
JavaScript 事件代理需要注意的地方
Sep 08 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中对xml读取的相关函数的介绍一
2008/06/05 PHP
PHP管理内存函数 memory_get_usage()使用介绍
2012/09/23 PHP
php常用ODBC函数集(详细)
2013/06/24 PHP
php模仿asp Application对象在线人数统计实现方法
2015/01/04 PHP
php实现批量删除挂马文件及批量替换页面内容完整实例
2016/07/08 PHP
php实现简单的权限管理的示例代码
2017/08/25 PHP
php array 转json及java 转换 json数据格式操作示例
2019/11/13 PHP
DWR Ext 加载数据
2009/03/22 Javascript
JSQL 基于客户端的成绩统计实现方法
2010/05/05 Javascript
如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框
2016/03/01 Javascript
nodejs的HTML分析利器node-jquery用法浅析
2016/11/08 NodeJs
javascript实现获取图片大小及图片等比缩放的方法
2016/11/24 Javascript
jQuery获取选中单选按钮radio的值
2016/12/27 Javascript
JS中的三个循环小结
2017/06/20 Javascript
JS实现按钮控制计时开始和停止功能
2017/07/27 Javascript
把JavaScript代码改成ES6语法不完全指南(分享)
2017/09/10 Javascript
讲解vue-router之什么是动态路由
2018/05/28 Javascript
VUE2.0+ElementUI2.0表格el-table实现表头扩展el-tooltip
2018/11/30 Javascript
微信小程序module.exports模块化操作实例浅析
2018/12/20 Javascript
javascript实现手动点赞效果
2019/04/09 Javascript
[01:34]完美“圣”典宣传片震撼发布,12.17与你不见不散
2016/12/16 DOTA
[52:41]OG vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/20 DOTA
浅析Python中else语句块的使用技巧
2016/06/16 Python
详解django中url路由配置及渲染方式
2019/02/25 Python
python数据预处理方式 :数据降维
2020/02/24 Python
Python web如何在IIS发布应用过程解析
2020/05/27 Python
浅谈pytorch中torch.max和F.softmax函数的维度解释
2020/06/28 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
PyQt5多线程防卡死和多窗口用法的实现
2020/09/15 Python
详解Python中如何将数据存储为json格式的文件
2020/11/18 Python
优秀交警事迹材料
2014/01/26 职场文书
七夕活动策划方案
2014/08/16 职场文书
雷锋式好少年事迹材料
2014/08/17 职场文书
法人代表证明书
2014/09/18 职场文书
2016八一建军节慰问信
2015/11/30 职场文书
《静夜思》教学反思
2016/02/17 职场文书