공부했던 자료 정리하는 용도입니다.
재배포, 수정하지 마세요.
Array 객체
//1. 크기가 지정되지 않은 배열
var myArray = new Array();
//2.초기값이 있는 배열
//[2-1] 리터럴을 사용한 배열
var numbers = ["one", "two", "three", "four"];
//[2-2] Array객체를 사용한 배열
var numbers = Array("one", "two", "three", "four");
자바스크립트의 내장 객체이다. 여러 개의 항목을 하나의 변수에 저장해야 할 때 배열(Array)을 사용한다. 빈 괄호를 사용하면 배열 요소의 개수가 고정되지 않으며, 초기값이 있는 배열일 경우 위와 같이 리터럴을 사용하거나 Array 객체를 사용해서 만들 수 있다.
배열과 for문
var triple = [3, 6, 9]
for(var i = 0 ; i < triple.length ; i++){
console.log(triple[i]);
}
Array 객체의 length 속성을 사용하면 배열의 길이를 확인할 수 있다.
인덱스 값은 0 ~ (length - 1) 이므로 이를 이용해서 for 문을 돌린다.
Array 객체의 함수
이 밖에 다른 함수나 내용을 참고하려면 아래의 사이트를 참조하거나 해당 함수를 검색하면 된다.
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array
함 수 | 사용예시 (파란색은 결과값) | 설 명 |
concat( ) | var nums = ["1", "2", "3"] var chars = ["a", "b", "c", "d"] nums.concat(chars) ▶ (7) ["1", "2", "3", "a", "b", "c", "d"] |
기존의 배열에 또다른 배열이나 값을 합쳐 새로운 배열을 만드는 함수 (순서를 바꾸면 연결 순서가 달라짐) 새로운 배열을 만들어 내기 때문에 기존의 배열에는 영향 X |
join( ) | var nums = ["1", "2", "3"] nums.join("-") "1-2-3" |
배열 요소를 문자열로 합침. 이때 배열의 각 요소를 구분하는 구분자를 지정할 수 있다. 구분자를 지정하지 않으면 쉼표( , )로 요소를 구분 원래 배열은 바뀌지 X 새로운 배열 생성 |
push( ) | var nums = ["1", "2", "3"] nums.push("4", "5") 5 //추가된 후의 배열 요소 개수 반환 nums ▶ (5) ["1", "2", "3", "4", "5"] |
배열의 맨 끝에 요소를 추가한 후 새로운 length 반환 기존 배열에 변화를 준다. |
unshift( ) | var nums = ["1", "2", "3"] nums.unshift("0") 4 //추가된 후의 배열 요소 개수 반환 nums ▶ (4) ["0", "1", "2", "3"] |
배열의 맨 앞에 요소 추가 기존 배열에 변화를 준다. |
pop( ) | var study = ["html", "css", "javascript"] study.pop( ) "javascript" study ▶ (2) ["html", "css"] |
배열의 마지막 요소 값 반환 배열에서 요소를 추출 → 해당 요소가 빠지면서 배열이 수정 → 배열 삭제 효과 |
shift( ) | var js = ["node", "react", "angular", "vue"] js.shift( ) "node" js ▶ (3) ["react", "angular", "vue"] |
배열의 첫 번째 요소 값 반환 배열에서 요소를 추출 → 해당 요소가 빠지면서 배열이 수정 → 배열 삭제 효과 |
splice( ) | var numbers = [0, 1, 2, 3, 4, 5] numbers.splice(2) //인수가 1개인 경우 ▶ (4) [2, 3, 4, 5] numbers ▶ (2) [0, 1] var numbers = [0, 1, 2, 3, 4, 5] numbers.splice(2, 1) //인수가 2개인 경우 ▶ [2] numbers ▶ (5) [0, 1, 3, 4, 5] var study = ["html", "css", "javascript"] study.splice(2, 1, "js") //인수가 3개이상인 경우 study.splice(2, 0, "aa", "bb") //삭제하지 않고 추가하는 경우 ▶ ["javascript"] study ▶ (3) ["html", "css", "js"] |
배열의 중간 부분에 요소 추가/추출(삭제) 기존 배열에 변화를 준다 (1) 인수가 1개일 경우 : 해당 인덱스 요소부터 끝까지 삭제 (2) 인수가 2개일 경우 : 첫 번째 인수가 인덱스값, 두 번째 인수는 삭제할 개수가 된다. (3) 인수가 3개 이상일 경우 : 첫 번째 인수는 삭제를 시작할 위치, 두 번째 인수는 삭제할 개수, 세 번째 인수 이후는 추가할 요소가 된다. |
slice( ) | var colors = ["red", "green", "blue", "white", "black"] colors.slice(2) ▶ (3) ["blue", "white", "black"] var colors1 = colors.slice( ); // 인자가 없으면 그대로 복사됨 colors1 ▶ ["red", "green", "blue", "white", "black"] var colors2 = colors.slice(1, 4) colors2 ▶(3) ["green", "blue", "white"] colors //기존 배열은 변화 X ▶(5) ["red", "green", "blue", "white", "black"] |
시작 인덱스와 끝 인덱스를 지정해 그 사이의 요소를 꺼냄(끝 인덱스는 포함되지 X) 시작 인덱스만 지정할 경우 해당 인덱스 부터 배열 끝까지 추출 인자가 없으면 원래 배열 그대로 복사됨 기존의 배열은 변경되지 않는다. |
every( ) | var number = [1, 2, 3, 4, 5] var result = number.every(function (num){ return num <= 5; }); result true |
배열의 모든 요소가 주어진 판별함수를 통과하는지 테스트한다. 판별함수는 return 값이 true , false 가 되도록 지정해야한다. 배열의 모든 요소가 주어진 함수에 대해 true 라면 true 를 반환하고 그렇지 않으면 false 를 반환 빈 배열에서 호출하면 무조건 true 를 반환 |
filter( ) | var words = ['spray', 'limit', 'elite', 'destruction', 'present'] var result = words.filter(function (val){ return val.length > 6; }); result ▶ ["destruction", "present"] |
배열의 요소 중 주어진 필터링 함수에 대해 true 인 요소만 골라 새로운 배열을 만듦 요소가 전부 false 면 빈배열을 반환한다. |
forEach( ) | var study = ["html", "css", "javascript"] study.forEach(function (item, index, array) { console.log("[" + index + "]", item) }) [0] html [1] css [2] javascript |
배열의 모든 요소에 대해 지정한 함수를 실행 |
indexOf( ) | var study = ["html", "css", "javascript"] study.indexOf("css") 1 //인덱스는 0부터 시작 |
주어진 값과 일치하는 값이 있는 배열 요소의 첫 인덱스를 찾는다. |
reverse( ) | var study = ["html", "css", "javascript"] study.reverse( ) ▶ (3) ["javascript", "css", "html"] |
배열의 배치 순서를 역순으로 바꿈 |
sort( ) | var array = ["a", "A", "B", "b"] array.sort( ) ▶ (4) ["A", "B", "a", "b"] |
배열 요소를 지정한 조건에 따라 정렬 조건을 지정하지 않으면 문자열의 유니코드를 기준으로 정렬 |
toString( ) | var array = ["a", "A", "B", "b"] array.toString( ) "a,A,B,b" |
배열에서 지정한 부분을 문자열로 반환 각 요소는 쉼표( , )로 구분한다. |
'Front end > Javascript' 카테고리의 다른 글
[Javascript] 폼(form) (0) | 2020.01.15 |
---|---|
[Javascript] DOM (Document Object Model) (1) | 2020.01.09 |
[Javascript] 객체(object) (0) | 2020.01.05 |
[Javascript] 이벤트(event) (0) | 2020.01.02 |
[Javascript] 함수(function), 함수표현식, 스코프(scope) (0) | 2019.11.11 |