Javascript. 06

15972 단어 JavaScriptJavaScript

08. 배열

001. 배열의 기본

프로퍼티의 네임보다 값들의 순서가 더 중요한 경우
배열의 독특한점 : 대괄호 안의 각 요소별로 순서를 알려주는 숫자(index)를 매겨줌

  • 프로퍼티의 네임 삭제후 값들의 순서만 유지해도 된다 → 객체배열 활용
// 그냥 객체
let graduation = {
  "1st" : "국어",
  "2nd" : "수학",
  "3rd" : "사회",
  "4th" : "과학"
};

// 배열로
let rankingSub = [
  "국어", //요소(element)
  "수학",
  "사회",
  "과학"
];

// index == PropertyName
// indexing (0~...) : 0부터 시작
// 배열의 요소를 가져오는 방법 : 객체의 대괄호 표기법과 같다
//  console.log(배열이름[index]);
console.log(rankingSub[2]); // 사회
console.log(rankingSub[2 + 1]); // 과학

예제

let dataType = ['number', 'string', 'boolean', 'null', 'undefined', 'object'];

// 여기에 코드를 작성해 주세요.
let i = 0;
while (i < 6){
  console.log(dataType[i]);
  i++;
}

002. 배열 다루기

⚠️ ***객체가 좋은이유** : 다양한 프로퍼티와 메소드들이 있어서 **필요한 상황에 유용하게 사용**할수있음*
let members = [
   '김경수', '홍준표', '이재명', '추미애', '한소희'
 ];

// 배열도 객체다!
console.log(typeof members); //object

다양한 Property

  • 01 : length : 배열이 가지고 있는 요소의 총 개수를 표시
    console.log(members.length); //5
    console.log(members["length"]); //프로퍼티니까 점표기법으로 접근하지만 대괄호도 가능
    console.log(members[members.length - 1]); // : 한소희
      // 요소의 인덱스는 0번부터 시작하니까 length를 활용해 배열의 마지막 요소에 접근 가능

배열에 요소 추가 및 수정

01. 추가

뛰어넘고 요소를 추가햇을때 : empty 가 나옴 → 5번 인덱스값이 비어있긴하지만 하나의 요소로 생성 ⇒ members의 length가 7인걸 확인할수 있다(예상치 못한경우 확인가능)

members[6] = "김태연"; // 추가
console.log(members[5]); //undefined
// 인덱스의 순서를 뛰어넘으면서 추가하면 undefined값이 들어간 요소가 자동으로 생성

02. 수정

이미 존재하는 요소에 접근

members[3] = "aespa"; // 수정
console.log(members); // 추미애 -> aespa 

예제(섭씨를 화씨로)

// 미니의 답
let celsiusTemps = [27, 25, 26, 22, 28, 27, 21];
let fahrenheitTemps = [];

// 여기에 코드를 작성해 주세요
	for(i = 0; i<7; i++){ // celsiusTemps의 index갯수만큼
		let caculateF = (celsiusTemps[i] * 9 / 5) + 32;
		fahrenheitTemps.push(caculateF);
	}
	
	
	// fahrenheitTemps 테스트
	console.log(fahrenheitTemps);
// 모범답안
let celsiusTemps = [27, 25, 26, 22, 28, 27, 21];
let fahrenheitTemps = [];

for (let i = 0; i < celsiusTemps.length; i++) {
  fahrenheitTemps[i] = (celsiusTemps[i] * 9 / 5) + 32
}

// fahrenheitTemps 테스트
console.log(fahrenheitTemps);

// 다른모범답안
let celsiusTemps = [27, 25, 26, 22, 28, 27, 21];
let fahrenheitTemps = [];

let i = 0;
while (i < celsiusTemps.length) {
  fahrenheitTemps[i] = (celsiusTemps[i] * 9 / 5) + 32
  i++;
}

// fahrenheitTemps 테스트
console.log(fahrenheitTemps);

좋은 웹페이지 즐겨찾기