여러 개의 값을 하나의 변수에 저장하기 위해 사용되는 데이터 구조
배열 리터럴([])을 사용한 배열 선언
let 변수명 = [];
: 빈 배열 선언let 변수명 = [요소1, 요소2, 요소2, ...];
: : 요소들로 구성된 배열 선언 및 초기화Array 생성자를 사용한 배열 선언
let 변수명 = new Array(n);
: 요소가 n개인 배열 선언let 변수명 = new Array(요소1, 요소2, 요소3, …);
: 요소들로 구성된 배열 선언 및 초기화자바스크립트 내장객체인 Array를 사용한 배열 선언
let 변수명 = Array.of(요소1, 요소2, 요소3,...);
: 요소들로 구성된 배열 선언 및 초기화요소 변경
배열명 = [요소1, 요소2, …];
: 배열의 전체 요소 변경배열명[인덱스] = 값;
: 인덱스를 통한 배열의 특정 위치 요소 변경요소 삭제
배열명.length;
: 배열의 요소 개수 = 배열의 길이배열명.push(값);
: 배열의 끝에 요소 추가배열명.unshift(값);
: 배열의 시작 부분에 요소 추가배열명.pop();
: 배열의 마지막 요소 삭제 및 반환배열명.shift();
: 배열에서 첫 번째 요소를 삭제 및 반환배열명.splice(인덱스[, 삭제여부][, 값]);
: 인덱스를 통해 배열의 특정 위치의 요소를 추가하거나 삭제배열명1.concat(배열명2);
: 배열1에 배열2를 합치기배열명.join([구분자]);
: 배열의 요소들을 합쳐서 하나의 문자열 반환배열명.slice(시작인덱스[, 끝인덱스]);
: 배열의 시작인덱스부터 끝인덱스-1 까지의 요소를 배열로 반환배열명.reverse();
: 배열의 배치 순서를 역순으로 바꿈배열명.forEach((현재요소의 값, 현재요소의 인덱스, 원본 배열 객체)=>{실행문});
: 배열의 모든 요소에 대해 주어진 함수를 실행반복문으로 배열에 저장된 요소의 값 출력 해보기
// for문으로 하는 방법 2가지 for(let i=0; i<배열명.length; i++) { document.write(배열명[i]);} for(let i of 배열명) { document.write(i); } // 배열의 메서드 forEach()사용하기 배열명.forEach((element, index) ⇒ { document.write(index,element); }) // element는 반복할 때마다의 현재 요소의 값, index는 현재 요소의 인덱스를 나타냄.
과목수, 과목명, 점수 입력받 총점, 평균 구해서 표로 나타내기
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>array practice</title>
<style>
table, td {
border: 1px solid black; /* 테이블 테두리 속성 지정*/
}
</style>
</head>
<body>
<script>
// 초기화
let subNum = 0;
let subName = [];
let subScore = [];
let totalScore = 0;
let avgScore = 0;
// 과목 수 입력 받기
subNum = Number(prompt('과목 수 입력'));
// 과목 수만큼 과목명 입력 받기
for (let i=0; i<subNum; i++){
subName.push(prompt(`${i+1}번째 과목 이름 입력`));
}
console.log(subName); // 과목이름 배열 확인하기
// 각 과목들의 점수 입력 받기
for (let i=0; i < subName.length; i++) {
subScore.push(Number(prompt(`${subName[i]}의 점수 입력`)));
totalScore += subScore[i];
}
// 과목들의 평균 구하기
avgScore = parseInt(totalScore / subNum);
// 테이블로 만들기 - document.write() 안에 백팁(`)을 이용하여 html에 작성했던 것처럼 table태그 작성
document.write(`<table> <tr bgcolor='pink'>`)
for (let i=0; i<subNum; i++) {
document.write(`<td> ${subName[i]}</td>`)
}
document.write(`<td>총합</td><td>평균</td></tr> <tr>`)
for (let i=0; i<subScore.length; i++) {
document.write(`<td> ${subScore[i]}</td>`)
}
document.write(`<td>${totalScore}</td><td>${avgScore}</td></tr> </table>`)
</script>
</body>
</html>