제이쿼리 배열 문제 2
본문
다시 질문 좀 드릴게요.
정리를 제대로해서 말씀드리자면..
일단 ul li로 만들어진 리스트가 있어요
여기서 데이터가 쭈루룩 있는데요
<ul>
<li data-id="1234">데이터1</li>
<li data-id="5678">데이터2</li>
<li data-id="9911">데이터3</li>
</ul>
여기서 첫번째줄을 클릭 하게되면
배열에다가 push로 추가 되잖아요
배열 형식은 [{id:'1234',name:'데이터1'}] 이렇습니다..
그리고 똑같은것을 누르면 중복이 되잖아요
그래서 제가 아래 코드처럼 만들어서 중복 안되게 만들었는데
문제가 뭐냐면 새 데이터와 이전 데이터 두가지만 등록만 되고
나머지는 이렇게 됩니다.
0:[{id:'1234',name:'데이터1'}]
1:[{id:'5678',name:'데이터2'}]
밑에 데이터 3을 클릭하면 로그에서 보면 아래 처럼 나옵니다.
0:[{id:'1234',name:'데이터1'}]
1:[{id:'9911',name:'데이터3'}]
중복 없이 쌓여가야하는데.. 위에 처럼 나와서 어떻게 짜야될지.. 고민입니다..
let newList = [{'id':id,'name': name}];
keyword_arr.forEach(function(item) {
if(item.id !== id) {
var newArr = [...newList,{...item}];
}
console.log(newArr);
});
ps. 답변 달아주신것도 감사하는데 너무 대충 달아주시지 않으셨으면 좋겠습니다.. ㅠㅠ
!-->
답변 2
let newList = [{'id':id,'name': name}];
var newArr = [];
keyword_arr.forEach(function(item) {
if(item.id !== id) {
newArr = [...newList,{...item}];
}
console.log(newArr);
});
관심이 없는것 같아서 여기까지 하겠습니다..
답변을 작성하시기 전에 로그인 해주세요.