[JS] 오브젝트, 인스턴스
- Language
- 2023. 5. 23.
반응형
반응형
- Built-in 오브젝트
- Function, Object, Array 등
- 오브젝트
- Built-in 오브젝트로 생성한 오브젝트
- function book(){코드}
- [1, 2], {key: value}
- 인스턴스
- new 연산자로 생성한 오브젝트
- new Book();
- 변수 구분
- 로컬(지역) 변수, 글로벌(전역) 변수
- 이유: 기능과 목적이 다르기 때문
- 글로벌 변수의 기능, 목적
- 다른 js 파일에서 변수값 공유 가능
- 파일에서 공통 변수 개념으로 사용
- 의도는 좋으나 처리 속도 떨어짐
- 로컬 변수의 기능, 목적
- 빠르게 식별자를 해결하기 위해, 가까운 스코프의 변수를 사용하려는 것
- var 키워드 문제
- 앞서까지는 문제 없었지만,
- 글로벌 변수는 글로벌 오브젝트의 로컬 변수 => var 키워드 사용이 정상
- var 키워드를 작성하지 않으면, 글로벌 변수로 간주
- 로컬변수와 글로벌 변수를 구분한 목적을 생각해야함
val = 100;
function point() {
val = 300;
log("함수::", val) // console.log()의 약칭
};
point();
- use strict 사용
- 함수 안에서 var 키워드를 사용하지 않으면 에러 발생
- ES5에서 도입했으나, 근본적인 접근은 아님
- ES6+ 에서는 "use strict"가 디폴트 환경
- 전체는 아님
"use strict"
function point(){
try {
val = 300;
} catch(e) {
log("글로벌 변수 사용불가");
}
}
point();
반응형
'Language' 카테고리의 다른 글
[Java] 오버로딩 (0) | 2023.06.01 |
---|---|
[JS] Array Destructuring (0) | 2023.05.25 |
[JS] function 블록 (0) | 2023.05.23 |
[JS] Javascript 스펙 (0) | 2023.05.23 |
@Node.js 문제 해결 (0) | 2022.11.17 |