-
jQuery Array merge 중복 데이터 제거Front-End/jQuery 2015. 1. 9. 10:14
Jquery Array 머지할때 중복데이터 제거 하다.. 야근한 기억 벗삼아 정리하자.
var prevJson = {
"product_list": [
{
"PrdCd": "111170145",
"qty": 1,
},
{
"PrdCd": "111172558",
"qty": 1,
},
{
"PrdCd": "111170116",
"qty": 1,
},
{
"PrdCd": "111170117",
"qty": 1,
},
{
"PrdCd": "111170118",
"qty": 1,
}
]
};
var nextJson = {
"product_list": [
{
"PrdCd": "111172558",
"qty": 2,
},
{
"PrdCd": "111170116",
"qty": 2,
},
{
"PrdCd": "111170117",
"qty": 1,
},
{
"PrdCd": "111170118",
"qty": 1,
},
{
"PrdCd": "111170135",
"qty": 1,
}
]
};
두개의 데이터가 있다 가정하고
PrdCd 가 중복되는 값은 무시한다.
function merge(prevJson, nextJson){
$.merge(nextJson.product_list, prevJson.product_list);
var existingPrdCds = new Array();
var existingQtys = new Array();
var existingArray = new Array();
nextJson.product_list = $.grep(nextJson.product_list, function(v) {
if ($.inArray(v.PrdCd, existingPrdCds) !== -1) {
return false;
}
else {
existingPrdCds.push(v.PrdCd);
existingQtys.push(v.qty);
existingArray.push(v);
return true;
}
});
console.log(JSON.stringify(existingPrdCds));
console.log(JSON.stringify(existingQtys));
console.log(JSON.stringify(existingArray));
return existingArray;
}
결과는
["111172558","111170116","111170117","111170118","111170135","111170145"]
[2,2,1,1,1,1]
[{"PrdCd":"111172558","qty":2},{"PrdCd":"111170116","qty":2},{"PrdCd":"111170117","qty":1},{"PrdCd":"111170118","qty":1},{"PrdCd":"111170135","qty":1},{"PrdCd":"111170145","qty":1}]
Good!
'Front-End > jQuery' 카테고리의 다른 글
한글, 영어, 자음, 모음, 특수문자 정규식 (0) 2016.02.12 youtube 동영상 Thumbnail 가져오기 (0) 2015.02.11 패스워드 엔터 입력시 로그인 시키기. (0) 2015.02.10 Remove Array Value By index in jquery (0) 2014.11.03 Tabhold 를 이용한 롤클릭 이벤트 처리. (0) 2014.10.02 jquery.cj-swipe.js 소개 (0) 2014.10.02 jQuery 를 이용한 + - 버튼 만들기. (0) 2014.10.02 HTML5 Local Storage (0) 2014.03.03 [jQuery] radio 값 가져오기, 설정하기 (2) 2013.11.27 비밀번호(패스워드) 유효성 체크 (문자, 숫자, 특수문자의 조합으로 6~16자리) [출처] [javascript] 비밀번호(패스워드) 유효성 체크 (문자, 숫자, 특수문자의 조합으로 6~16자리)|작성자 가을사랑 (0) 2013.11.19 댓글