javascript

멤버 접근 연산자

momomoo 2024. 4. 30. 17:07

.은 ~의 라는 의미를 기억 

 

 

myemail.split('@')[1].split('.')[0] 이런거나

console.log(person.address.zipCode); 이런거

 

 

 

 

중간에 . . . 이렇게 연결되어있는데

이런걸 "점 표기법(dot notation)" 또는

"멤버 접근 연산자(member access operator)"이라고 합니다.

 

 

 

 

 

JavaScript에서 객체와 메서드에 접근하는 방법

JavaScript에서는 점 표기법(.)을 사용하여 객체의 속성이나 메서드에 접근할 수 있습니다.

위에 예시 처럼 표현함으로써

해당 객체의 구조를 따라내부에 있는 속성이나 메서드에 접근

 

예를 들어, 변수.함수.함수와 같은 표현은 변수가 가리키는 객체에서 함수를 호출하는 것입니다.

이 경우, 변수는 첫 번째 함수를 호출하고,

그 결과로 반환되는 값에 대해 두 번째 함수를 호출합니다.

 

 

 

이것은 객체의 속성이나 메서드가 다른 객체를 반환할 수 있고,

반환된 객체에 다시 접근할 수 있음을 의미합니다. > 해당 값 조작도 가능

이는 JavaScript에서 객체를 사용하여 데이터를 구조화하고 조작하는 강력한 방법 중 하나입니다.

 

 

 

 

 

지역 스코프에 들어갈 때도 유사한 방식을 사용

함수 안에서 다른 함수를 호출하거나

객체 내의 메서드를 호출할 때도 이러한 방식을 사용합니다.

 

 

점 + [] 

객체의 속성 이름이 동적으로 결정되는 경우

myemail.split('@')[1].split('.')[0]  이렇게 []를 같이 쓰기도

대괄호 표기법은 동적으로 속성 이름이 결정되는 경우에 주로 사용됩니다.

 

 

 

 

 

 

 

 

const person = {
    name: 'John',
    address: {
        city: 'New York',
        zipCode: '10001'
    },
    getEmailDomain: function() {
        return this.email.split('@')[1];
    }
};
console.log(person.name); // 'John'
console.log(person.address.city); // 'New York'
console.log(person.address.zipCode); // '10001'
console.log(person.getEmailDomain()); // 함수 호출 결과

 

2번째 보면

함수 person 의 객체에서 address를 타고 city값을 뽑아옴