자바스크립트 map을 활용한 사례

2024. 6. 17. 14:38IT 개발 관련(Java, Spring, JavaScript)

게시판과 같이 user정보를 list로 담아서 배열로 뿌려주고, 그 뿌려준 데이터를 하나씩 가공하기 위해서는 자바스크립트 map을 활용 할 수 있다.

 

<c:foreach var=user items="${listUser}">

<tr>

<td>

<label>

<input type="checkbox" name="Ids" .... (생략) data-userid="${user.userid}"/>

<span class="test"><spring:message code="W0123" text="선택"/></span>

</label>

</td>

 

.

.

.

 

[자바스크립트]

 

checkedList:function() {

let listUser = new Array();

$("input[name='Ids']:checkbox:checked").each(function () {

let user = new Object();

user.userid = $(this).data("userid");

listUser.push(user);

.

.

.

 

});

return listUser;

}

 

.

.

.

 

 

goServer:function() {

let listUser = this.checkedList();

 

let Ids = listUser.map(function(user) {

return user.userid;

});

 

$.ajax({

url : "test1/test2/test.do",

.

.

.

 

[Server] Java

List<ListUser> listUser = new ArrayList<>();

for (String userid : Ids) {

User user = new User();  

user.setId(userid);

.

.

.

 

 

결론 : 처음 자바스크립트에서 배열로 된 정보중 필요한 정보를 map으로 뽑아서 서버에 전달하고 전달한 정보를 서버에서 가공할 수 있다.