JS/JS 공부

[JS] Object 객체

congs 2023. 4. 12. 15:12

Object 객체

: 식별할 수 있는 것을 상세 특징으로 표현하려한 형식 (코드 타입)

 

  • const 상수로 선언하는 것이 일반적
  • 객체의 지속성을 유지하고 확보하기 위함

 

기본형

{ 속성명 : 속성값, 속성명2 : 속성값2 ... } 으로 표현

예)
<script>       
      const car = {name:'myCar', year:2023};   
</script>
  • 속성명 : 객체 내에서 중복되면 안됨 (고유 키)
  • 객체 내부의 속성 값으로 사용할 수 있는 데이터 타입은 제한이 없음
  • 객체의 속성값으로 익명함수를 정의하면  그 함수 = 메서드 (메서드명은 속성명)
  • const car=100; 으로 재할당이 불가능! (car의 지속성을 확보하기 위해)

 

사용예

 <script>
        const me = {
            lastName : 'park',
            firstName : 'jungeun',
            age : 26,
            addr : 'incheon',
            isDeveloper : true,
            'hobby' : 'game',
            'myFavor' : '간식',
            // 따옴표 사용도 가능!
            avail:{
                year:2023,
                title:'javascript',
                ver:'ES6+',
                project:'Back-end',
                intro: function(){
                    console.log(`${me.avail.title}:${me.avail.ver}=${me.avail.project}`);
                    return `re:${this.title} : ${this.ver} = ${this.project}`;
                    // this는 현재의 나!
                }
            },
            year : 2023
        };
        // 세미콜론 ; 의 유무는 선택
        
        // 전체 데이터 추출
        console.log(me);
        // 원하는 데이터 추출
        console.log(me.addr); // incheon
        console.log(me.year); // 2023
        console.log(me.avail.project); // Back-end
        console.log(me.avail.title); // javascript
        console.log(me.avail.intro); // 함수 실행이 아닌 지목!
        console.log(me.avail.intro()); // 함수 실행(invoke:호출실행)

        console.log('---------------------------------------');

        console.log(me['addr']); // incheon
        console.log(me['hobby']); //game
        console.log(me['avail']['title']); //javascript
        console.log(me['avail']['intro']()); 
        //javascript:ES6+=Back-end
 		//re:javascript : ES6+ = Back-end

        console.log('---------------------------------------');

        let keyName = 'firstName'; 
        console.log(me[keyName]); // jungeun = me['firstName']과 동일

        keyName = 'age';
        console.log(me[keyName]); // 26 = me['age']와 동일
        
        console.log('---------------------------------------');
        
        // 혼용 가능
        console.log(me.avail['title']); //javascript
        console.log(me['avail'].ver); //ES6+
    </script>

'JS > JS 공부' 카테고리의 다른 글

[JS] event_input 데이터 받기  (0) 2023.04.12
[JS] event 객체  (0) 2023.04.12
[JS] arrow 화살표 함수  (0) 2023.04.12
[JS] 함수 파라미터(매개변수) 받아 사용하기  (0) 2023.04.12
[JS] return 리턴  (0) 2023.04.12