[英]Two 'equal' javascript objects not equal
在Angular应用程序中,我正在比较两个对象(用户进行更改后,原始对象与当前对象)。 问题是,两个对象不相等-甚至在进行任何更改之前。 在浏览器中调试时,两个对象看起来完全相同。 下面我尝试了angular.equals()
但是comparison
为false:
ChangeTracker.protype.hasChanged = function (current) {
var comparison = angular.equals(this.original, current);
return !comparison;
};
我还尝试了_.isEqual
的_.isEqual
以及常规( ==
)和严格( ===
)等于运算符。
我以为我可能正在按引用进行比较,但是即使将对象包装在JSON.parse(JSON.stringify())
该比较仍然返回false。
为什么两个看似相等的对象又不相等?
看起来像是您的代码中的错字,您是要返回比较值吗?
ChangeTracker.protype.hasChanged = function (current) {
var comparison = angular.equals(this.original, current);
return !compare;
};
看起来应该是:
return !comparison
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.