Dev-dotoli TIL

JS 13 array



array

demo18.html



배열(array)의 문법


array(배열)은 연관된 데이터를 모아 한꺼번에 관리하기 위해 사용하는

데이터 타입임.

  • 변수는 하나의 데이터를 저장,

  • 배열은 여러개의 데이터를 하나의 변수에 저장



변수에 하나 담기

var name = "dotoli";

document.write(name);


변수하나에 데이터 3개 담기, 추출

  • element: 담겨있는 각 데이터
var member = ["dotoli", "zzphoo", "toltol"];

document.write(member[0]); //dotoli
document.write(member[1]); //zzphoo
document.write(member[2]); //toltol
//변수이름이 name 일때는 다르게 작동함
//그 외에 random 변수명은 똑같이 작동함.. 뭐지


array에 담겨있는 element를 가져올 때는

변수명[ ] 대괄호안에 숫자)(index)를 넣음

function get_members() {
  return ["dotoli", "zzphoo", "toltol"];
}

var members = get_members();

document.write(members[2]); //toltol



배열(array)과 반복문


function get_members() {
  return ["dotoli", "zzphoo", "toltol"];
}
members = get_members();

for(i=0, i<members,.length; i++){
  document.write(members[i].toUpperCase());
  document.write('<br>');
}

//DOTOLI
//ZZPHOO
//TOLTOL

array members내용을 하나씩 꺼내

대문자로 변경 후 출력

  • 연관된 정보를 그룹으로 관리
  • 그 정보를 처리할 때는 반복문 이용



배열(array)의 제어


array는 복수의 데이터를 효율적으로 관리,전달하기 위한 목적으로

고안된 데이터 타입이기 때문에

데이터 추가/수정/삭제 같은 일을 돕는 기능을 가지고 있음


  • 배열의 크기
var arr = [1, 2, 3, 4, 5];
alert(arr.length);
// 5


  • element 추가
var li = [1, 2, 3, 4, 5];

li.push("6");

alert(li); // 1,2,3,4,5,6

push는 인자로 전달된 값을 배열에 추가


  • element 복수 추가
var li = [1, 2, 3, 4, 5];

li.concat("6", "7");

alert(li); // 1,2,3,4,5,6,7


  • 시작점에 element 추가
var li = [1, 2, 3, 4, 5];

li.unshift("6");

alert(li); // 6,1,2,3,4,5

unshift는 전달한 argument(인자=값)를

array에 첫번째 element로 추가하고

기존 element의 index(색인)를 1씩 증가시킴


  • 특정 위치에 element 추가/대체
var li = [1, 2, 3, 4, 5];

li.splice(2, 0, "A");

alert(li); // 1,2,A,3,4,5

// splice:
//첫번째 arg에 해당하는 element 부터 (위치지정)
//두번째 arg의 element 숫자값을 array로부터 제거후 리턴(제거)
//세번째 arg값을 첫번째 arg 뒤에 추가 (대체)


  • 첫번째 element제거
var li = [1, 2, 3, 4, 5];

li.shift();

alert(li); // 2,3,4,5


  • 마지막 element 제거
var li = [1, 2, 3, 4, 5];

li.pop();

alert(li); // 1,2,3,4


  • 정렬
var li = [2, 4, 5, 1, 3];

li.sort();

alert(li); // 1,2,3,4,5


  • 역순 정렬
var li = [1, 2, 3, 4, 5];

li.reverse();

alert(li); // 5,4,3,2,1