js对象的比较
js对象的比较
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:Object.prototype.equals=function(obj){if(this==obj)returntrue...

复制代码 代码如下:

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教程学习
热门Javascript教程学习
编程开发子分类