배열을 만드는 방법
var member = ['one','two','three'];
document.write(member[0],member[1]member[2]); // one,two,three
document.write(member); // one,two,three
배열을 만드는 방법은
배열이름 = [a , b , c]; 의 형태로 배열의 원소를 대괄호로 감싸는 형태이다.
배열의 원소는 0번부터 시작한다.
function getmembers(){
return ['one','two','three'];
}
var members = getmembers();
document.write(members); // one,two,three
배열을 함수를 이용해서 선언하는 방법이다.
배열과 반복문
function getmembers(){
return ['one','two','three'];
}
var members = getmembers(); // 함수를 이용한 배열의 선언
for(i=0;i<members.length;i++){
document.write(members[i].toUpperCase()+"<br/>")
// 반복문을 이용해 배열의 원소를 대문자로 반환
}
// ONE,TWO,THREE
toUpperCase
함수를 이용해 배열의 원소를 대문자로 반환하여 출력하는 코드이다.
조건문의 조건이 해당 배열의 크기로 지정되어있기 때문에
이후에 배열의 크기가 늘어나고 줄어듦에 관계 없이 코드는 동작한다.
배열의 수정
var numbers = ['one','two','three','four','five'];
numbers.push('six');
document.write(numbers); // one,two,three,four,five,six
push
함수를 사용하면 배열의 맨 뒤에 원소를 추가할 수 있다.
var numbers = ['one','two','three','four','five'];
numbers.concat(['six','seven']);
document.write(numbers); // one,two,three,four,five,six,seven
concat
함수를 사용하면 배열의 맨 뒤에 추가하고자 하는 배열을 덧붙힐 수 있다.
해당 함수를 사용할 때 괄호 안에 기입되는 인자는 배열의 형태를 띄고 있어야 한다.
var numbers = ['one','two','three','four','five'];
numbers.unshift('zero');
document.write(numbers); // zero,one,two,three,four,five
unshift
함수를 사용하면 배열의 맨 앞에 원소를 추가할 수 있다.
var numbers = ['one','two','three','four','five'];
numbers.splice(2,0,'zero');
document.write(numbers); // one,two,zero,three,four,five
// 2번 원소의 앞(0)에 'zero'원소를 기입하겠다.
numbers.splice(2,1,'six');
document.write(numbers); // one,two,six,three,four,five
// 2번 원소부터 (1)개의 원소를 지우고 해당 위치에 'six'원소를 기입하겠다.
numbers.splice(3,2,'seven');
document.write(numbers); // one,two,six,seven.five
// 3번 원소부터 (2)개의 원소를 지우고 해당 위치에 'seven'원소를 기입하겠다.
numbers.splice(4,0,'eight');
document.write(numbers); // one,two,six,seven,eight,five
// 4번 원소의 앞(0)에 'eight'원소를 기입하겠다.
splice
함수를 사용하면 배열의 특정 원소를 제거하고 해당 위치에 새로운 원소를 기입할 수 있다.
한 번에 여러개의 원소를 지울 수도 있다.
var numbers = ['one','two','three','four','five'];
numbers.shift();
document.write(numbers); // two,three,four,five
shift
함수를 사용하면 배열의 제일 앞에있는 원소를 제거할 수 있다.
var numbers = ['one','two','three','four','five'];
numbers.pop();
document.write(numbers); // one,two,three,four
pop
함수를 사용하면 배열의 제일 뒤에있는 원소를 제거할 수 있다.
var numbers = [4,3,5,1,9];
numbers.sort();
document.write(numbers); // 1,3,4,5,9
sort
함수를 사용하면 배열이 오름차순으로 정렬된다.
var numbers = [4,3,5,1,9];
numbers.reverse();
document.write(numbers); // 9,5,4,3,1
reverse
함수를 사용하면 배열이 내림차순으로 정렬된다.
var numbers = [1,11,2,21,3,31,4,41];
numbers.sort();
for(i=0;i<numbers.length;i++){
document.writeln(numbers[i]);
} // 1 , 11 , 2 , 21 , 3 , 31 , 4 , 41
// 오름차순 정렬은 되었지만 숫자의 크기순은 아닌모습
numbers.sort(function(a, b) {
return a - b;
});
for(i=0;i<numbers.length;i++){
document.writeln(numbers[i]);
} // 1 , 2 , 3 , 4 , 11 , 21 , 31 , 41
// 숫자의 크기 순서대로 오름차순이 되었다.
sort
함수는 인수로 아무 값도 지정해주지 않게된다면
compare Function
이 생략되어 유니코드 순으로 정렬된다.
숫자의 크기에 따라 정렬되게 하기 위해서는 인수란에 숫자의 크기를 판별할 수 있는
판별식을 함수로 정의하여 기입해줘야 한다.