배열과 객체 #1
오늘 아침 6시반에 기상, 정말 가기 힘들었던 수영을 가고, 책을 읽거나 글을 쓰지는 못했다.
그래도 오늘 가는 길에 다음부터는 어떻게든 6시에 기상하여 최소한의 독서를 하거나 아니면 일기를 쓰자는
나만의 작은 결심을 하고 또한 수영 레슨 시간에도 늦지말자고 다시 마음을 추스렸다.
아직도 평영할 때 팔이 조금 넓나보다. 평영 팔에 자유형 발차기를 하며, 평형 팔에 대한 연습을 다시 했다.
오늘 아침까지의 일은 이정도로 마무리 짓고, 다음부터는 아침 일기를 맥으로 기록하려 한다.
아침에 일어나자마자 쓰는 일기로 신발 카테고리에 적어야겠다. 어떻게든 매일을 기록하는 습관을 가지길...
배열과 객체
배열과 객체는 수 많은 데이터를 한 번에 처리하는 방법이다.
먼저 [] (대괄호 혹은 square brackets)으로 배열을 만들고, 각각의 값을 ,(쉼표)로 구분한다.
또한 구성 요소의 단어를 짚어보자면
[23, 64, 'adverb', false, '고구마']
노란색 배경은 index 이며
빨간색 글씨는 element, 값, 요소로 불린다. 이 요소는 문자열, 숫자열, Boolean 전부 상관 없이 들어갈 수 있다.
배열의 특이점은 우리가 생각하는 1,2,3부터 세지 않고 0부터 센다.
즉 노란색 배경은 0번째 index의 값 연두색 배경의 고구마란 녀석은 4번째 index의 값이다.
이 배열 n번째 index의 요소를 확인하거나, 아니면 새로운 element를 추가해 index를 더하거나
element를 빼거나 혹은 배열 전체의 길이를 확인하는 방법이 있으며, 배열이 맞는지 아닌지를 확인할 수 있는 메소드도 있다.
1. index의 요소를 확인하는 법
let arr = [23, 64, 'adverb', false, '고구마']
위를 예시로 들자면 arr을 선언하고, 거기에 저 위의 배열을 할당했다.
arr[n]이란 놈은 n번째의 요소가 무엇이냐? 라는 것인데
만일 0이라면 23이고, 4라면 고구마다.
또한 arr.includes(x)라는 메소드는 x라는 요소가 배열안에 있다면,
그 값을 true 혹은 false로 판별해준다.
만일 x에 23을 넣는다면, true 내가 싫어하는 감자를 넣는다면, false가 나오는 것이다.
arr.indexOf(x)라는 녀석도 있는데, 이 녀석은 x라는 녀석이 이 배열의 몇 번째에
존재한다. 라는 것을 말해주는 메소드이다.
여기도 x에 23을 넣는다면, 0이라는 숫자가 나오고, 감자를 넣는다면 존재하지 않기에 -1이라는 숫자를 리턴한다.
2. index의 요소를 더하거나 빼는 법
먼저 더하는 것을 정리해보자면
맨 앞에 더하는 것과 맨 끝에 더하는 방법이 있다.
참 극과 극이다.
그걸 정리해보자면
arr.unshift(x) 이건 x라는 요소를 맨 앞에 추가한다. 근데 이 메소드가 웃긴게 추가를 하고, 결과값을 그 추가가 된 배열의 길이를 숫자로 보여준다. 그래서 문제를 풀 때 상당히 헤메기도 했다.
예를 들어보면,
let arr = [23, 64, 'adverb', false, '고구마']
여기에 arr.unshift('사과')를 넣는다면,
let arr = ['사과', 23, 64, 'adverb', false, '고구마']
라는 배열이 생성이 되는데, 이 녀석을 개발자 도구에 치면 6이 나온다.
이제 맨 끝에 더하는 메소드를 소개한다.
이름하야 arr.push(x)다. unshift와 비슷하다. 이 녀석도 더해진 배열의 길이를 숫자열로 보여준다.
하지만 뒤쪽에 더해진다.
let arr = ['사과', 23, 64, 'adverb', false, '고구마']
이 배열에서 arr.push('아이유')를 한다면, 이 배열 안에 아이유가 추가되는 것이다.
(아이유 노래 너무 좋다. 밤편지 들으면서 쓰는 중)
let arr = ['사과', 23, 64, 'adverb', false, '고구마', '아이유']
이거 조금 더 하면 너무 길어질 거 같아서 빼는 것과 추가적으로 더 정리해야 될 것들은 내일 이어서 하겠다.
이러다 엄청 밀리는건 아니겠지? 그럼 주말에 해야지 주말의 나 화이팅 !!! 내일의 나도 화이팅 !!!:)