01. 배열 속성 : length : 배열 길이 구하기 : 반환(숫자)
length 속성은 배열의 길이를 구할 수 있다.
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
const arrNum = [ 100, 200, 300, 400, 500 ];
//01.
document.querySelector(".sample01_N1").innerHTML = "1";
document.querySelector(".sample01_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample01_M1").innerHTML = "length";
document.querySelector(".sample01_P1").innerHTML = arrNum.length;
//02.
const arrTxt = ['a', 'b', 'c', 'd', 'f'];
document.querySelector(".sample01_N2").innerHTML = "2";
document.querySelector(".sample01_Q2").innerHTML = "['a', 'b', 'c', 'd', 'f']";
document.querySelector(".sample01_M2").innerHTML = "length";
document.querySelector(".sample01_P2").innerHTML = arrTxt.length;
//03.
const arr = [1, 2, ['a', 'b']];
document.querySelector(".sample01_N3").innerHTML = "3";
document.querySelector(".sample01_Q3").innerHTML = "[1, 2, ['a', 'b']]";
document.querySelector(".sample01_M3").innerHTML = "length";
document.querySelector(".sample01_P3").innerHTML = arr.length;
02. 배열 메서드 : join() : 배열 요소 문자열을 결합 : 반환(문자열)
length 속성은 배열의 길이를 구할 수 있다.
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
const arrNum = [100, 200, 300, 400, 500];
const text1 = arrNum.join('');
const text2 = arrNum.join(' ');
const text3 = arrNum.join('⭑');
const text4 = arrNum.join('-');
//01
document.querySelector(".sample02_N1").innerHTML = "1";
document.querySelector(".sample02_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample02_M1").innerHTML = "join('')";
document.querySelector(".sample02_P1").innerHTML = text1;
//02
document.querySelector(".sample02_N2").innerHTML = "2";
document.querySelector(".sample02_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample02_M2").innerHTML = "join(' ')";
document.querySelector(".sample02_P2").innerHTML = text2;
//03
document.querySelector(".sample02_N3").innerHTML = "3";
document.querySelector(".sample02_Q3").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample02_M3").innerHTML = "join('⭑')";
document.querySelector(".sample02_P3").innerHTML = text3;
//04
document.querySelector(".sample02_N4").innerHTML = "4";
document.querySelector(".sample02_Q4").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample02_M4").innerHTML = "join('-')";
document.querySelector(".sample02_P4").innerHTML = text4;
03. 배열 메서드 : puch() / pop()
push()메서드는 배열 마지막 요소에 추가하고 리턴값 전체 길이, pop() 메서드는 배열 마지막 요소를 삭제합니다 리턴값 마지막 요소.
번호 | 기본값 | 메서드 | 리턴값 | 결과값 |
---|---|---|---|---|
//01
const arrNum = [100, 200, 300, 400, 500];
const arrPush = arrNum.push(600); //배열에 추가
document.querySelector(".sample03_N1").innerHTML = "1";
document.querySelector(".sample03_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample03_M1").innerHTML = "push(600)";
document.querySelector(".sample03_P1").innerHTML = arrPush; //6
document.querySelector(".sample03_A1").innerHTML = arrNum; //100,200,300,400,500,600
//02
const arrNum2 = [100, 200, 300, 400, 500];
const arrPush2 = arrNum2.push();
document.querySelector(".sample03_N2").innerHTML = "2";
document.querySelector(".sample03_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample03_M2").innerHTML = "push()";
document.querySelector(".sample03_P2").innerHTML = arrPush2; //500
document.querySelector(".sample03_A2").innerHTML = arrNum2; //100,200,300,400
04. 배열 메서드 : unshift() / shift()
unshift() 메서드 : 배열 처음 요소에 추가, pop() 메서드 : 배열 처음 요소를 삭제
번호 | 기본값 | 메서드 | 리턴값 | 결과값 |
---|---|---|---|---|
//01
const arrNum1 = [100, 200, 300, 400, 500];
const arrNumUnshift = arrNum1.unshift(600);
document.querySelector(".sample04_N1").innerHTML = "1";
document.querySelector(".sample04_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample04_M1").innerHTML = "unshift(600)";
document.querySelector(".sample04_P1").innerHTML = arrNumUnshift;
document.querySelector(".sample04_A1").innerHTML = arrNum1;
//리턴값(숫자)(갯수)
//02
const arrNum2 = [100, 200, 300, 400, 500];
const arrNumShift = arrNum2.shift();
document.querySelector(".sample04_N2").innerHTML = "2";
document.querySelector(".sample04_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample04_M2").innerHTML = "shift()";
document.querySelector(".sample04_P2").innerHTML = arrNumShift;
document.querySelector(".sample04_A2").innerHTML = arrNum2;
05. 배열 메서드 : reverse() / sort()
reverse() 메서드 : 순서를 반대로 정렬, sort() 메서드 : 배열 요소를 정렬
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum1 = [100, 200, 300, 400, 500];
const arrNumReverse = arrNum1.reverse();
document.querySelector(".sample05_N1").innerHTML = "1";
document.querySelector(".sample05_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample05_M1").innerHTML = "reverse()";
document.querySelector(".sample05_P1").innerHTML = arrNumReverse;
//02
const arrNum2 = [100, 200, 300, 400, 500];
const arrNumSort2 = arrNum2.sort();
document.querySelector(".sample05_N2").innerHTML = "2";
document.querySelector(".sample05_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample05_M2").innerHTML = "sort()";
document.querySelector(".sample05_P2").innerHTML = arrNumSort2;
//03
const arrNum3 = [100, 200, 300, 400, 500];
const arrNumSort3 = arrNum3.sort(function(a,b){return b-a});
document.querySelector(".sample05_N3").innerHTML = "3";
document.querySelector(".sample05_Q3").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample05_M3").innerHTML = "sort(function(a,b){return b-a})";
document.querySelector(".sample05_P3").innerHTML = arrNumSort3;
//04
const arrNum4 = [500, 400, 300, 200, 100];
const arrNumSort4 = arrNum4.sort(function(a,b){return a-b});
document.querySelector(".sample05_N4").innerHTML = "4";
document.querySelector(".sample05_Q4").innerHTML = "[500, 400, 300, 200, 100]";
document.querySelector(".sample05_M4").innerHTML = "arrNum4.sort(function(a,b){return a-b})";
document.querySelector(".sample05_P4").innerHTML = arrNumSort4;
//05
const arrNum5 = ['c', 'b', 'e', 'w', 'h'];
const arrNumSort5 = arrNum5.sort(function(a,b){return a.localeCompare(b)});
document.querySelector(".sample05_N5").innerHTML = "5";
document.querySelector(".sample05_Q5").innerHTML = "['c', 'b', 'e', 'w', 'h']";
document.querySelector(".sample05_M5").innerHTML = "a.localeCompare(b)";
document.querySelector(".sample05_P5").innerHTML = arrNumSort5;
//06
const arrNum6 = ['c', 'b', 'e', 'w', 'h'];
const arrNumSort6 = arrNum6.sort(function(a,b){return b.localeCompare(a)});
document.querySelector(".sample05_N6").innerHTML = "6";
document.querySelector(".sample05_Q6").innerHTML = "['c', 'b', 'e', 'w', 'h']";
document.querySelector(".sample05_M6").innerHTML = "b.localeCompare(a)";
document.querySelector(".sample05_P6").innerHTML = arrNumSort6;
06. 배열 메서드 : concat() : 펼침연산자 : 배열요소 결합
...
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum1 = [100, 200, 300];
const arrNum2 = [400, 500, 600];
const arrConcat = arrNum1.concat(arrNum2);
document.querySelector(".sample06_N1").innerHTML = "1";
document.querySelector(".sample06_Q1").innerHTML = "[100, 200, 300], [400, 500, 600]";
document.querySelector(".sample06_M1").innerHTML = "arrNum1.concat(arrNum2)";
document.querySelector(".sample06_P1").innerHTML = arrConcat;
//02
const arrSpered = [ ...arrNum1, ...arrNum2 ];
document.querySelector(".sample06_N2").innerHTML = "2";
document.querySelector(".sample06_Q2").innerHTML = "[100, 200, 300], [400, 500, 600]";
document.querySelector(".sample06_M2").innerHTML = "[ ...arrNum1, ...arrNum2 ]";
document.querySelector(".sample06_P2").innerHTML = arrSpered;
07. 배열 메서드 : reduce() / reduceRight()
...
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum1 = [100, 200, 300, 400, 500];
const arrReduce1 = arrNum1.reduce(element => element);
document.querySelector(".sample07_N1").innerHTML = "1";
document.querySelector(".sample07_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample07_M1").innerHTML = "arrNum1.reduce(element => element)";
document.querySelector(".sample07_P1").innerHTML = arrReduce1;
const arrNum2 = [100, 200, 300, 400, 500];
const arrReduce2 = arrNum2.reduce((p, c) => p + c);
document.querySelector(".sample07_N2").innerHTML = "2";
document.querySelector(".sample07_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample07_M2").innerHTML = "arrNum1.reduce((p, c) => p + c)";
document.querySelector(".sample07_P2").innerHTML = arrReduce2;
const arrNum3 = [100, 200, 300, 400, 500];
let sum = 0;
for (let i=0; i<arrNum3.length; i++){
sum += arrNum3[i];
}
document.querySelector(".sample07_N3").innerHTML = "3";
document.querySelector(".sample07_Q3").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample07_M3").innerHTML = "for()";
document.querySelector(".sample07_P3").innerHTML = sum;
const arrNum4 = [[100, 200], [300, 400]];
const arrReduce4 = arrNum4.reduce((p,c) => p.concat(c));
document.querySelector(".sample07_N4").innerHTML = "4";
document.querySelector(".sample07_Q4").innerHTML = "[[100, 200], [300, 400]]";
document.querySelector(".sample07_M4").innerHTML = "arrNum4.reduce((p,c) => p.concat(c))";
document.querySelector(".sample07_P4").innerHTML = arrReduce4;
const arrNum5 = ["javascript", "react", "vue"];
const arrReduce5 = arrNum5.reduceRight((p,c) => p+c);
document.querySelector(".sample07_N5").innerHTML = "5";
document.querySelector(".sample07_Q5").innerHTML = "['javascript', 'react', 'vue']";
document.querySelector(".sample07_M5").innerHTML = "arrNum5.reduceRight((p,c) => p+c)";
document.querySelector(".sample07_P5").innerHTML = arrReduce5;
08. 배열 메서드 : slice()
slice 문자열과 배열 모두 다 가능한 메서드
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum = [100, 200, 300, 400, 500];
const result1 = arrNum.slice(2);
document.querySelector(".sample08_N1").innerHTML = "1";
document.querySelector(".sample08_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample08_M1").innerHTML = "arrNum.slice(2)";
document.querySelector(".sample08_P1").innerHTML = result1;
const result2 = arrNum.slice(2,3);
document.querySelector(".sample08_N2").innerHTML = "2";
document.querySelector(".sample08_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample08_M2").innerHTML = "arrNum.slice(2,3)";
document.querySelector(".sample08_P2").innerHTML = result2;
const result3 = arrNum.slice(2,4);
document.querySelector(".sample08_N3").innerHTML = "3";
document.querySelector(".sample08_Q3").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample08_M3").innerHTML = "arrNum.slice(2,4)";
document.querySelector(".sample08_P3").innerHTML = result3;
const result4 = arrNum.slice(2,5);
document.querySelector(".sample08_N4").innerHTML = "4";
document.querySelector(".sample08_Q4").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample08_M4").innerHTML = "arrNum.slice(2,5)";
document.querySelector(".sample08_P4").innerHTML = result4;
const result5 = arrNum.slice(-2);
document.querySelector(".sample08_N5").innerHTML = "5";
document.querySelector(".sample08_Q5").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample08_M5").innerHTML = "arrNum.slice(-2)";
document.querySelector(".sample08_P5").innerHTML = result5;
const result6 = arrNum.slice(-2,5);
document.querySelector(".sample08_N6").innerHTML = "6";
document.querySelector(".sample08_Q6").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample08_M6").innerHTML = "arrNum.slice(-2,5)";
document.querySelector(".sample08_P6").innerHTML = result6;
09. 배열 메서드 : splice() : 배열 요소를 다른 요소로 변경
원본 값이 바뀜
번호 | 기본값 | 메서드 | 리턴값 | 결과값 |
---|---|---|---|---|
//01
arrNum = [100, 200, 300, 400, 500];
const result = arrNum.splice(2);
document.querySelector(".sample09_N1").innerHTML = "1";
document.querySelector(".sample09_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample09_M1").innerHTML = "arrNum.splice(2)";
document.querySelector(".sample09_P1").innerHTML = result;
document.querySelector(".sample09_A1").innerHTML = arrNum;
arrNum2 = [100, 200, 300, 400, 500];
const result2 = arrNum2.splice(2,3);
document.querySelector(".sample09_N2").innerHTML = "2";
document.querySelector(".sample09_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample09_M2").innerHTML = "aarrNum.splice(2,3)";
document.querySelector(".sample09_P2").innerHTML = result2;
document.querySelector(".sample09_A2").innerHTML = arrNum2;
arrNum3 = [100, 200, 300, 400, 500];
const result3 = arrNum3.splice(2,3, 'javascript');
document.querySelector(".sample09_N3").innerHTML = "3";
document.querySelector(".sample09_Q3").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample09_M3").innerHTML = "aarrNum.splice(2,3, 'javascrupt')";
document.querySelector(".sample09_P3").innerHTML = result3;
document.querySelector(".sample09_A3").innerHTML = arrNum3;
arrNum4 = [100, 200, 300, 400, 500];
const result4 = arrNum4.splice(1,1, 'javascript');
document.querySelector(".sample09_N4").innerHTML = "4";
document.querySelector(".sample09_Q4").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample09_M4").innerHTML = "aarrNum.splice(1,1, 'javascrupt')";
document.querySelector(".sample09_P4").innerHTML = result4;
document.querySelector(".sample09_A4").innerHTML = arrNum4;
arrNum5 = [100, 200, 300, 400, 500];
const result5 = arrNum4.splice(1,0, 'javascript');
document.querySelector(".sample09_N5").innerHTML = "5";
document.querySelector(".sample09_Q5").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample09_M5").innerHTML = "aarrNum.splice(1,0, 'javascrupt')";
document.querySelector(".sample09_P5").innerHTML = result5;
document.querySelector(".sample09_A5").innerHTML = arrNum5;
arrNum6 = [100, 200, 300, 400, 500];
const result6 = arrNum4.splice(0,4, 'javascript');
document.querySelector(".sample09_N6").innerHTML = "6";
document.querySelector(".sample09_Q6").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample09_M6").innerHTML = "aarrNum.splice(0,4, 'javascrupt')";
document.querySelector(".sample09_P6").innerHTML = result6;
document.querySelector(".sample09_A6").innerHTML = arrNum6;
10. 배열 메서드 : indexOf() / lastIndexOf() / includes()
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
11. 배열 메서드 : find() / findIndex()
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum = [100, 200, 300, 400, 500];
// const result = arrnum.find(function(element){
// return element === 300;
// });
// const result = arrnum.find((element) => {
// return element === 300;
// });
// const result = arrnum.find(element => {
// return element === 300;
// });
const result = arrNum.find(e => e === 300);
document.querySelector(".sample11_N1").innerHTML = "1";
document.querySelector(".sample11_Q1").innerHTML = "[100, 200, 300, 400, 200]";
document.querySelector(".sample11_M1").innerHTML = "find(e => e === 300)";
document.querySelector(".sample11_P1").innerHTML = result;
const result2 = arrNum.find(e => e === 600);
document.querySelector(".sample11_N2").innerHTML = "2";
document.querySelector(".sample11_Q2").innerHTML = "[100, 200, 300, 400, 200]";
document.querySelector(".sample11_M2").innerHTML = "find(e => e === 600)";
document.querySelector(".sample11_P2").innerHTML = result2;
const arrText = ['javascript', 'jquery', 'react'];
const result3 = arrText.find(e => e === 'javascript');
document.querySelector(".sample11_N3").innerHTML = "3";
document.querySelector(".sample11_Q3").innerHTML = "['javascript', 'jquery', 'react']";
document.querySelector(".sample11_M3").innerHTML = "find(e => e === 'javascript')";
document.querySelector(".sample11_P3").innerHTML = result3;
const result4 = arrText.findIndex(e => e === 'javascript');
document.querySelector(".sample11_N4").innerHTML = "4";
document.querySelector(".sample11_Q4").innerHTML = "['javascript', 'jquery', 'react']";
document.querySelector(".sample11_M4").innerHTML = "findIndex(e => e === 'javascript')";
document.querySelector(".sample11_P4").innerHTML = result4;
const result5 = arrText.findIndex(e => e === 'html');
document.querySelector(".sample11_N5").innerHTML = "5";
document.querySelector(".sample11_Q5").innerHTML = "['javascript', 'jquery', 'react']";
document.querySelector(".sample11_M5").innerHTML = "findIndex(e => e === 'html')";
document.querySelector(".sample11_P5").innerHTML = result5;
12. 배열 메서드 : filter()
find 와 동일하지만 기능에서 차이가 있음
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum = [100, 200, 300, 400, 500];
const result = arrNum.filter(el => el === 300);
document.querySelector(".sample12_N1").innerHTML = "1";
document.querySelector(".sample12_Q1").innerHTML = "[100, 200, 300, 400, 200]";
document.querySelector(".sample12_M1").innerHTML = "filter(el => el === 300)";
document.querySelector(".sample12_P1").innerHTML = result;
//02
const arrNum2 = [100, 200, 300, 400, 500];
const result2 = arrNum2.filter(el => el === 600);
document.querySelector(".sample12_N2").innerHTML = "2";
document.querySelector(".sample12_Q2").innerHTML = "[100, 200, 300, 400, 200]";
document.querySelector(".sample12_M2").innerHTML = "filter(el => el === 600)";
document.querySelector(".sample12_P2").innerHTML = result2;
//03
//filter와 find의 차이점: filter는 조건을 걸 수 있음
const arrNum3 = [100, 200, 300, 400, 500];
const result3 = arrNum3.filter(el => el >= 300);
document.querySelector(".sample12_N3").innerHTML = "3";
document.querySelector(".sample12_Q3").innerHTML = "[100, 200, 300, 400, 200]";
document.querySelector(".sample12_M3").innerHTML = "filter(el => el >= 300)";
document.querySelector(".sample12_P3").innerHTML = result3;
13. 배열 메서드 : map()
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const arrNum = [100, 200, 300, 400, 500];
const result = arrNum.map(el => el);
document.querySelector(".sample13_N1").innerHTML = "1";
document.querySelector(".sample13_Q1").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample13_M1").innerHTML = "map(el => el)";
document.querySelector(".sample13_P1").innerHTML = result;
//02
const arrNum2 = [100, 200, 300, 400, 500];
const result2 = arrNum2.map(el => el + "J");
document.querySelector(".sample13_N2").innerHTML = "2";
document.querySelector(".sample13_Q2").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample13_M2").innerHTML = "map(el => el + 'J')";
document.querySelector(".sample13_P2").innerHTML = result2;
//03
const arrNum3 = [100, 200, 300, 400, 500];
const result3 = arrNum3.map(el => el + 100);
document.querySelector(".sample13_N3").innerHTML = "3";
document.querySelector(".sample13_Q3").innerHTML = "[100, 200, 300, 400, 500]";
document.querySelector(".sample13_M3").innerHTML = "map(el => el + 100)";
document.querySelector(".sample13_P3").innerHTML = result3;
//04
const arrNum4 = [{a:100}, {a:200}, {a:300}];
const result4 = arrNum4.map(el => el.a);
document.querySelector(".sample13_N4").innerHTML = "4";
document.querySelector(".sample13_Q4").innerHTML = "[{a:100}, {a:200}, {a:300}]";
document.querySelector(".sample13_M4").innerHTML = "map(el => el.a)";
document.querySelector(".sample13_P4").innerHTML = result4;
14. 배열 메서드 : Array.from() / map()
번호 | 기본값 | 메서드 | 리턴값 |
---|---|---|---|
//01
const text = "javascript";
const result = Array.from(text);
document.querySelector(".sample14_N1").innerHTML = "1";
document.querySelector(".sample14_Q1").innerHTML = "javascript";
document.querySelector(".sample14_M1").innerHTML = "Array.from(text)";
document.querySelector(".sample14_P1").innerHTML = result;
console.log(result); //(10) ['j', 'a', 'v', 'a', 's', 'c', 'r', 'i', 'p', 't']
//02
const text2 = "javascript"
const result2 = Array.from(text2, el => el + "10");
document.querySelector(".sample14_N2").innerHTML = "2";
document.querySelector(".sample14_Q2").innerHTML = "javascript";
document.querySelector(".sample14_M2").innerHTML = "Array.from(text2, el => el + '10')";
document.querySelector(".sample14_P2").innerHTML = result2;
console.log(result2); //(10) ['j10', 'a10', 'v10', 'a10', 's10', 'c10', 'r10', 'i10', 'p10', 't10']
//03
const text3 = "javascript"
const result3 = [...text3].map(el => el);
document.querySelector(".sample14_N3").innerHTML = "3";
document.querySelector(".sample14_Q3").innerHTML = "javascript";
document.querySelector(".sample14_M3").innerHTML = "[...text3].map(el => el)";
document.querySelector(".sample14_P3").innerHTML = result3;