자바스크립트에서 배열 또는 JSON을 간단하게 비교할 수 있는 방법입니다.
Type이 Object면 사용 가능합니다.
Object.prototype.equals = function(x) {
// 인자값의 Type이 object가 아닐경우 false를 리턴한다.
if(typeof x !== "object") return false;
// Type을 String으로 변환한다.
var arr1 = JSON.stringify(this);
var arr2 = JSON.stringify(x);
return (arr1 === arr2);
}
var arr1 = ["foo", "bar"];
var arr2 = ["foo", "bar"];
var arr3 = ["foo", "bar", "stone"];
var json1 = { foo : "bar" };
var json2 = { foo : "bar" };
var json3 = { foo : "bar", bar : "foo" };
console.log( arr1.equals(arr2) ); // true
console.log( arr2.equals(arr3) ); // false
console.log( arr3.equals(arr1) ); // false
console.log( json1.equals(json2) ); // true
console.log( json2.equals(json3) ); // false
console.log( json3.equals(json1) ); // false
댓글