Hello, Android!
자바스크립트 배열, 배열 관련 함수 본문
자바스크립트의 배열 생성은 여러가지 방법이 있다
첫번째로 new를 사용하는 방법
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = new Array() arr00[0] = 100 arr00[2] = 4000 document.write(arr00) </script> </body> </html> | cs |
위의 배열의 출력 결과 arr00의 0번 2번에만 값이 있기 때문에 100,,4000 라는 결과가 나온다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = new Array(1,2,3,4,5,6,7,8,9,10) document.write(arr00) </script> </body> </html> | cs |
new를 통해 배열의 생성과 동시에 값을 넣어준다 출력 결과 1,2,3,4,5,6,7,8,9,10 이 나온다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] document.write(arr00) </script> </body> </html> | cs |
변수 선언과 동시에 바로 배열의 형태로 값을 넣어준다 출력 결과 1,2,3,4,5,6,7이 나온다
배열의 길이를 구할때는 배열명.length를 사용하여 길이를 구한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] document.write(arr00.length) </script> </body> </html> | cs |
배열의 arr00의 원소가 1,2,3,4,5,6,7 이기 때문의 출력 결과 arr00의 길이인 7이 나온다
배열에 원소를 추가하는 push함수 배열명.push('값') 의 형태로 사용하며 배열의 가장 뒤에 추가된다
, 를 이용하여 한번에 여러 원소를 추가할 수 있다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] arr00.push(100) document.write(arr00) </script> </body> </html> | cs |
arr00에 100이 추가되어 출력결과 1,2,3,4,5,6,7,100 이나온다
배열에 다른 배열의 원소를 추가할때는 concat을 이용한다
예를들어 a배열에 b,c배열의 원소를 추가할때는 a = a.concat(b,c)
concat은 a배열원소의 뒤에 b,c,배열의 원소를 순서대로 추가한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] var arr01 = [0,1,0,1,0,1,0,1] var arr02 = [1,2,1,2,1,2,1,2] arr00 = arr00.concat(arr02, arr01) document.write(arr00) </script> </body> </html> | cs |
배열의 가장 앞자리에 원소를 추가할때는 unshif를 이용한다
a원소의 가장 앞자리에 100 을 추가할때는 a.unshift(100) 을 한다
새로 추가된 100이 0번 인덱스에 들어오며 원래 있던 원소들은 한칸씩 뒤로 밀려난다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] arr00.unshift(100) document.write(arr00) </script> </body> </html> | cs |
범위를 지정하여 원소를 제거할때는 splice를 사용한다 splic(x, y, z)
splice는 배열의 z(제거 시작 인덱스값)번 인덱스 부터 y(제거 끝 인덱스값)번까지의
원소들을 제거하고 첫번째 원소의 뒤에 z(추가할 원소값)을 넣는다
추가할 원소값이 여러개인 경우 , 를 이용하여 여러개를 추가한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] arr00.splice(1,3,1000) document.write(arr00) </script> </body> </html> | cs |
arr00 배열의 1번인덱스 부터 3번인덱스 까지의 원소를 제거하고
첫번째 인덱스 뒤에 1000을 넣었기때문에
출력값은 1, 1000, 5, 6, 7 이 된다
특정 인덱스(2번 인덱스)를 삭제하기 위해서는 arr00.splice(2,1)
배열의 0번 인덱스의 요소를 제거할 때는 shift를 사용한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] arr00.shift() document.write(arr00) </script> </body> </html> | cs |
반대로 매열의 가장 마지막 인덱스의 요소를 제거할 때는 pop을 사용한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [1,2,3,4,5,6,7] arr00.pop() document.write(arr00) </script> </body> </html> | cs |
배열을 정렬할때 오름차순으로 정렬할 때는 sort를 사용한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [9,3,7,5,1] arr00.sort() document.write(arr00) </script> </body> </html> | cs |
배열을 역순으로 출력할 때는 reverse함수를 사용하한다
배열의 가장 마지 인덱스의 막원소 부터 0번 인덱스의 요소 순서로 출력한다
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> </head> <body> <script> var arr00 = [10,9,8,7,6,5,4,3,2,1] arr00.reverse() document.write(arr00) </script> </body> </html> | cs |
'JavaScript' 카테고리의 다른 글
상속, 프로토타입 (0) | 2018.11.26 |
---|---|
객체 생성자 new (0) | 2018.11.22 |
자바스크립트 객체 (0) | 2018.11.22 |