[TIL : 7] JS/Node 객체

👩‍💻 Achievement Goals : 객체

  • 배열과 객체의 구조를 이해하고 언제, 어떻게 사용하는지 이해할 수 있다.

    yes

  • 배열과 객체의 특징을 구분하여 사용할 수 있다.

    배열 : index에 요소가 담겨 순서를 가진다.
    객체 : 각 key에 value를 한 쌍으로 담겨 의미를 가진다. 그럼 순서를 가질 순 없을까?

    let obj = {a : 1, 
    	    b : 2, 
                c : 3};
    let arr1 = Object.keys(obj)
    console.log(arr1) // ['a', 'b', 'c'] <-배열로 담겨 순서를 가질 수 있다!
    let arr2 = Object.values(obj) 
    console.log(arr2) // [1, 2, 3] 
    let len1 = Object.keys(obj).length // 이러면 길이도 구할 수 있다!
    let len2 = Object.values(obj).length
    console.log(len1) // 3
    console.log(len2) // 3 key와 value는 한 쌍이기 때문에 동일한 결과가 나온다!
  • 객체 속성(property)의 추가, 조회, 변경, 삭제를 자유자재로 할 수 있다.

    yes

  • 객체 속성 조회법 두 가지, dot notationbracket notation의 차이를 이해한다.

    dot notation : .으로 조회한다.
    bracket notation : [](대괄호)로 조회한다. key 값이 변수로 주어질 때 조회할 수 있다. (*변수가 아닐 경우에는 꼭 ''로 키 값 감싸주기!)

    let user = {name : "jabae", 
    	     city : "seoul", 
                 age : 20}; // value에는 꼭 '' || ""을 써 주어야 한다!
    console.log(user.name) // 'jabae'
    console.log(user['name']) // jabae 
    let where = 'city' //
    console.log(user[where]) // seoul
  • 여기서 잠깐! key가 있는 지 없는 지 확인할 수 있는 메소드가 있다!
    'key' in obj : obj객체 안에 key 값이 있는 지 확인할 수 있다. 있으면 true, 없으면 false를 반환한다.
    console.log('name' in user) // true
    console.log('email' in user) // false
  • 객체 실습 - 2의 tweet.contenttweet['content']의 차이가 무엇인지 설명할 수 있다.

    위에서 설명했다.

  • dot notation을 이용한 객체 할당 방식을 능숙하게 다룰 수 있다. obj.a = "hello"

    위의 예제를 이어서

    user.age = 26;
    console.log(user.age) // 26
  • 객체 속성 삭제를 위한 delete 키워드를 사용할 수 있다.

    delete : 냅다 key 값과 value 값을 지워주는 키워드이다. dot notationbracket notation과 함께 쓸 수 있다.
    위의 예제를 이어서

    delete user.city;
    console.log(user) // {name: 'jabae', age: 26}
    delete user['age'];
    console.log(user) // {name: 'jabae'}
  • 객체를 위한 for문 for ... in 문을 이해하고 다룰 수 있다.

    for 속성이름 in 객체 : 객체는 반복이 불가능하지만 for in은 가능하다!

    let friend = {name : "jihyu", 
    	       city : "seoul", 
                   age : 20};
    for (let key in friend) {
    	console.log(key);   // name\ city\ age\ 가 순서대로 출력된다.
        }

📚 그 외

  • for in for of 가 배열에서, string에서, 객체에서 어떻게 쓰이는 지 알아보았는데, 그걸 내 것으로 만들기 위해서는 조금 더 공부가 필요할 것 같다. 많이 쓰인다고 하니 깊이 파고들 필요가 있다.
  • Object.keys(obj).length이렇게 객체의 요소 갯수를 구한다거나, 객체의 요소가 배열일 때 obj[key][index] 이렇게 접근 가능하다는 게 신기하다. obj[key].slice(0, -1) 이런 식으로도 가능하다는 것도. 싱기방기😬
  • 정말 공부하면 공부할수록 더 깊고 끝없는 미로 속으로 들어가는 것 같은 느낌이랄까. 어느 정도 내 뼈대가 세워지면 차차 스스로 걸어갈 수 있을 것 같은데,,,😫 아직 초반이라 너무 욕심부리지 말자. 차근차근!🔥
  • 여태 뒤로 밀었던 c언어 알고리즘도 꼭꼭 풀어야 겠다.

좋은 웹페이지 즐겨찾기