比较js的对象
JavaScript #对象2012-05-19 16:55
项目中常用到比较js的对象。
Object.prototype.equals = function(obj){ if(this == obj) return true; if(typeof(obj)=="undefined"||obj==null||typeof(obj)!="object") return false; var length = 0; var length1=0; for(var ele in this) { length++; } for(var ele in obj) { length1++; } if(length!=length1) return false; if(obj.constructor==this.constructor){ for(var ele in this){ if(typeof(this[ele])=="object") { if(!this[ele].equals(obj[ele])) return false; } else if(typeof(this[ele])=="function"){ if(!this[ele].toString().equals(obj[ele].toString())) return false; } else if(this[ele]!=obj[ele]) return false; } return true; } return false; };示例:
var p1 = {name:"jack",age:18}; var p2 = {name:"lucy",age:10}; var p3 = {name:"jack",age:18}; console.log(p1.equals(p2));//false console.log(p1.equals(p3));//true console.log(p1.equals({name:"jack",age:18}));//true
相关文章
- JavaScript将光标定位于输入框最右侧的方法 2012/05/19
- Javascript操作select控件(新增、修改、删除、选中等) 2012/05/19
- ajax中文乱码问题解决方法 2012/05/19
- javascript检测浏览器及其版本的代码 2012/05/19
- JavaScript实现禁止右键、复制、另存为、查看源文件 2012/05/18
- javascript解决图片缩放问题 2012/05/18
- JavaScript随机数 2012/05/18
- Javascript键盘事件的组合使用 2012/05/18
- 伦敦2012奥运会倒计时代码javascript版 2012/05/12
- js全选/全不选Checkbox函数 2012/05/09