Skip to content

Latest commit

 

History

History
115 lines (82 loc) · 3.86 KB

[TIL] 2022.05.11-Day12.md

File metadata and controls

115 lines (82 loc) · 3.86 KB

[TIL] Day12
[SEB FE] Day12

☑️ 객체

  • 키와 값 쌍(key-value pair)으로 이루어져 있음. (배열과 달리 순서 정보가 없음)

    • 객체는 속성에 순서대로 접근하지 않고, key를 통해서 value에 접근
    let user = {
        firstName: 'Soobin',
        lastName: 'Choi',
        email: 'tnqls1211v@gmail.com'
    };
    
    // key: firstName, lastName, email
    // value: 'Soobin', 'Choi', 'tnqls1211v@gmail.com'

### 📎 객체의 값 사용 방법
  1. Dot notation: user.firstName;

  2. Bracket notation: user[’firstName’];

    ✋ key를 감싸줄 때 ’’, “”, ``(백틱) 모두 사용 가능

    ✋ user[firstName]; 처럼 key를 감싸주는 것이 없으면 정의되지 않은 변수를 참조하므로 ReferenceError
    ⇒ key를 문자열 형식으로 전달해야 함

👉🏻 user[’firstName’] === user.firstName;true


📎 객체의 값 추가 & 삭제 & 확인

  • 추가: 객체 안에 없는 키&값을 할당해주면 객체에 추가

  • 삭제: delete 키워드로 삭제

  • 확인: in 연산자를 이용해 해당 키의 존재 여부 확인

     let user = {
     	firstName: 'Soobin',
     };
     
     user.lastName = ['Choi'];
     user['Country'] = 'Korea';
     
     ------->
     
     let user = {
     	firstName: 'Soobin',
     	lastName: 'Choi',
     	Country: 'Korea'
     }
     
     delete user.Country;  // key&value 쌍 모두 삭제
     
     ------->
     
     let user = {
     	firstName: 'Soobin',
     	lastName: 'Choi'
     }
     
     'firstName' in user;  // true
     'Country' in user;    // false


☑️ etc

➰ 종합퀴즈 & 연습문제를 풀면서 기억해야 할 개념들 기록

  • splice(제거할 요소의 index, 몇번째 요소까지, 제거한 후 대신 추가할 요소) (기본 배열 변경 O)

  • pop(), push(), unshift(), shift() 등의 원본 배열이 변경되면서 반환되는 형태가 원본 배열이 아닐 경우엔 배열만 반환해주는 코드가 필요

    let arr = [1, 2, 3, 4];
    arr.push(100) // return 5 (length)
    return arr;   // return [1, 2, 3, 4, 100] (변경된 배열)
  • 배열이 빈 배열인지 확인하는 방법: arr.length === 0

  • for ~ in문을 통해서 객체의 모든 key에 접근하고 출력 가능

    function iteratation(obj) {
    	for (let key in obj) {
    		obj[key]
    	}
    }
  • for ~ of문은 string, array 등에서 사용 가능한 반복문 (객체에서는 사용되지 않음)

    • for (let ele of arr) === for (let i = 0; i < arr.length; i += 1)
  1. Object.entries(): for ~ in과 같은 순서로 주어진 객체 자체의 enumerable 속성 [key, value] 쌍의 배열을 반환
  2. Object.keys(): 주어진 객체의 key들을 배열로 반환
  3. Object.values(): 주어진 객체의 value들을 배열로 반환
  • slice(0,-1) : 배열의 마지막 요소 반환

  • 반복문, 조건문 등에서 continue -> 건너 뜀, break -> 여기서 반복문/조건문 끝



✅ 05.11 새벽에 TED 강연 시청
👉🏻 Bill Gates - 'The next outbreak? We're not ready'
🎤 인류는 질병의 위험에 크게 노출되어 있지만 이에 대한 대비가 많이 부족하다는 뉘앙스의 강연이다. 에볼라 질병을 예로 강연이 진행된다. 소름인건 2015년 강연인데 현재 코로나 질병에 대한 질병의 위험 노출에 대해 저격한듯한 내용이었다. 만약 전에 인류가 바이러스에 대한 질병의 대비책에 힘을 많이 썼다면 이렇게까지 코로나가 심해지지 않았을수도 있었을까..?