본문 바로가기
FRONT-END/JavaScript

[JavaScript] Object 비교하기

by 미누치 2019. 7. 2.

자바스크립트에서 배열 또는 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

 

댓글