위로
아래
배열 메소드 기본형
기본형
/* 배열 메소드 */
$.inArray(찾을 데이터, arr, 찾기 시작할 위치) // 배열 안에서 찾을 데이터의 인덱스 번호를 반환하고, 찾지 못하면 -1을 반환.
$.isArray(object) // 객체가 배열이면 true, 아니면 false 반환
$.merge(arr1, arr2) // 배열 arr1과 배열 arr2를 하나로 합친다
$("div").index("h1") //
/* 배열 반복 메소드 */
$("h1").each(function(){}) // 배열의 인덱스 순서대로 하나씩 메서드를 반복 실행
$.each($("h1"), function(){})
$.map(arr, function) // 배열에 저장된 데이터 수만큼 메서드 반복 실행 후, 반환된 데이터를 인덱스 오름차순으로 새 배열에 저장.
$.grep(arr, function) // 배열에 저장된 데이터 수만큼 메서드 반복 실행 후, 반환값이 true일 때만 반환된 데이터를 새 배열에 저장.
배열 메소드
inArray()
지정한 데이터가 배열의 몇 번 인덱스에 있는지 찾아서 반환
isArray()
배열인지 아닌지 확인하여 true / false로 반환
merge ()
두 배열 객체를 합친다
inArray(), isArray(), merge () 예시
<script src="../js/jquery-3.7.0.min.js"></script>
<script type="text/javascript">
$(function(){
let arr1=["서울","대전","부산","전주"];
let arr2=["한국","미국","일본","중국"];
let obj={
"name":"정부장",
"area":"서울"
}
let idxNum = $.inArray("부산",arr1); // 결과 2 (인덱스 번호니까 0부터해서 세 번째다)
console.log(idxNum);
let okArray1 = $.isArray(arr1);
let okArray2 = $.isArray(obj);
console.log(okArray1); // 결과 true
console.log(okArray2); // 결과 false
$.merge(arr2,arr1);
console.log(arr2); // 결과 두 배열 합
})
</script>
index()
지정 선택 요소의 인덱스 번호를 반환
index() 예시
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script src="../js/jquery-3.7.0.min.js"></script>
<script type="text/javascript">
$(function(){
let idxNum=$("li").index($("#list3"));
console.log(idxNum); // 결과 2
})
</script>
</head>
<body>
<h1>배열 관련 함수</h1>
<ul>
<li>내용1</li>
<li>내용2</li>
<li id="list3">내용3</li>
<li>내용4</li>
</ul>
</body>
</html>
배열 반복문 메소드 : each()
인덱스 순서대로 한 개 한 개 접근해서, 요소 개수만큼 메서드를 반복 실행
each () 기본형
// li 태그로 이루어진 배열을 li 개수만큼 반복하면서, 인덱스 값을 매개변수 i에, 결과값을 o에 반환한다.
$("li").each(function(i,o){console.log(i+o});
$.each($("li"), function(i,o){console.log(i+o});
// obj 배열을 인덱스 횟수만큼 반복해서 자기 자신의 값을 콘솔창에 띄운다.
$(obj).each(function(){console.log($(this)})
each () 예시
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script src="../js/jquery-3.7.0.min.js"></script>
<script type="text/javascript">
$(function(){
let obj = [{"area":"서울"},{"area":"부산"},{"aera":"전주"}]
$(obj).each(function(i,o) {
console.log(i+":",o);
});
console.log("==the End1==");
$.each($("#menu1 li"), function(i,o){
console.log(i+":", o);
})
console.log("==the End2==");
$.each($("#menu2 li"), function(i){
console.log(i+":", $(this));
})
})
</script>
</head>
<body>
<h1>탐색 선택자</h1>
<ul id="menu1">
<li>내용1-1</li>
<li>내용1-2</li>
<li>내용1-3</li>
</ul>
<ul id="menu2">
<li>내용2-1</li>
<li>내용2-2</li>
<li>내용2-3</li>
</ul>
</body>
</html>
배열 반복문 메소드 : map()
map ()
배열에 저장된 데이터 수만큼 메서드 반복해서 결과를 새 배열에 인덱스 오름차순으로 대입.
map () 기본형
// 배열에 저장된 데이터 수만큼 메서드 반복 실행 후, 반환된 데이터를 새 배열에 저장.
$.map(arr, function)
map () 예시
<script src="../js/jquery-3.7.0.min.js"></script>
<script type="text/javascript">
$(function(){
let arr1=[
{"area" : "서울", "name" : "무대리"},
{"area" : "부산", "name" : "홍과장"},
{"area" : "대전", "name" : "박사장"},
{"area" : "서울", "name" : "빅마마"}
]
let arr2=$.map(arr1,function(a,b){
if(a.area == "서울") return a;
});
console.log(arr2);
//결과 0 : {area:"서울",name:"무대리"}, 1: {area:"서울",name:"홍과장"}
</script>
배열 반복문 메소드 : grep()
grep()
배열에[ 저장된 데이터 수만큼 메서드를 반복실행하며 인덱스 오름차순으로 배열의 데이터를 불러옴.반환값이 true면 데이터를 새 배열에 저장하고 배열을 반환.
<script src="../js/jquery-3.7.0.min.js"></script>
<script type="text/javascript">
$(function(){
let arr1=[
{"area" : "서울", "name" : "무대리"},
{"area" : "부산", "name" : "홍과장"},
{"area" : "대전", "name" : "박사장"},
{"area" : "서울", "name" : "빅마마"}
]
let arr2=$.grep(arr1, function(a,b){
if(a.area == "서울"){
return true;
} else {
return false;
}
});
console.log(arr2);
})
</script>