[Javascript] 5. Strict, 객체, 내장형 객체
1. Strict 모드
- Javascript에서
안전성
과 효율성
면에서 사용하지 말아야 할 구문을 발견하여 오류
로 통지해주는 구조이다.
- Internet Explorer에서는
Version 10
이상에서만 지원한다.
'use strict'; //"usestrict"; 도 가능하다
// 임의의 코드
function test() {
'use strict';
// 함수의 본체
}
2. 외부 스크립트를 비동기방식으로 로드하기-async/defer
- 일반 브라우저에서는 스크립트의 읽기 및 실행이 완료될 때까지 뒤에 있는 컨텐츠를 렌더링하지 않는다.
즉, 웹 페이지의 앞 부분에 사이즈가 큰 스크립트가 있다면 로딩 시간이 길어질 수 있다.
- 이러한 현상을 피하기 위해
</body>
태그 바로 앞에 <script>
요소를 배치하는 방법도 있지만, HTML5에 새롭게 추가된 async
속성을 사용해도 된다.
<script src="lib.js" async></script>
- 위의 코드와 같이 src 속성에 지정된 스크립트를 비동기 방식으로 로드하는 것이 가능하다.
즉, 로드가 완료되는 대로 순차적으로 실행한다.
- 하지만,
async
속성이 있는 <script>
요소는 실행 순서가 보장되지 않는다.
<script src="lib.js" async></script>
<script src="app.js" async></script>
- 위의 경우 어느 쪽이 먼저 실행되는지 알 수 없다. 이를 해결하기 위해
.js
파일을 하나로 통합하거나, async
속성 대신 defer
속성을 지정하면 된다.
- defer 속성은 문서 해석이 끝날 때까지 스크립트 실행을 지연시키는 것이다.
3. 객체
- Javascript의
객체
라는 이름
과 키
로 접근 가능한 배열 - 연상 배열(해시)
라고 정의했었다.
객체
란 단순한 집합이 아니고, 객체 자체가 하나의 개체
이며 내부에 포함된 요소
는 그 개체의 특성이나 동작을 나타내기 위해서 존재한다.
* 또한, 객체
를 중심으로 코드를 작성하는 방법을 객체지향이라고 한다.
3.1 new 연산자
- 데이터가 서로 충돌하여 애플리케이션이 올바르게 동작하지 못하는 것을 방지하기 위해 '원본을 복제한 복사본'을 조작해야 한다.
객체
의 복제를 만드는 것을 인스턴스화, 인스턴스화에 의해 만들어진 복제본을 인스턴스라고 한다.
var 변수명 = new 객체명([인수,...])
- 객체에는 객체를 초기화하기 위해 객체와 동일한 이름의 메소드가 준비되어 있는데, 초기화 메소드를
생성자(constructor)
라고 한다.
- 인스턴스가 보관된 변수는
인스턴스 변수
또는 객체 변수
라고 부르며, 프로퍼티/메소드
를 호출하려면 닷(.)
연산자를 사용한다.
변수명.프로퍼티명 [= 설정값];
변수명.메소드명([인수 [,...]]);
3.2 내장형 객체
- Javascript에는 많은 객체가 있는데, 가장 기본적인 것은
내장형 객체(Built-in Object)
이다.
참조변수(인스턴스 이름)= new 생성함수()
var bus = new Object();
document.write("bus색상 : "+this.color,"<br>");
//this는 내장 객체 bus를 의미한다.
- 날짜 정보 객체
var date = new Date();
안전성
과 효율성
면에서 사용하지 말아야 할 구문을 발견하여 오류
로 통지해주는 구조이다.Version 10
이상에서만 지원한다.'use strict'; //"usestrict"; 도 가능하다
// 임의의 코드
function test() {
'use strict';
// 함수의 본체
}
- 일반 브라우저에서는 스크립트의 읽기 및 실행이 완료될 때까지 뒤에 있는 컨텐츠를 렌더링하지 않는다.
즉, 웹 페이지의 앞 부분에 사이즈가 큰 스크립트가 있다면 로딩 시간이 길어질 수 있다. - 이러한 현상을 피하기 위해
</body>
태그 바로 앞에<script>
요소를 배치하는 방법도 있지만, HTML5에 새롭게 추가된async
속성을 사용해도 된다.
<script src="lib.js" async></script>
- 위의 코드와 같이 src 속성에 지정된 스크립트를 비동기 방식으로 로드하는 것이 가능하다.
즉, 로드가 완료되는 대로 순차적으로 실행한다. - 하지만,
async
속성이 있는<script>
요소는 실행 순서가 보장되지 않는다.
<script src="lib.js" async></script>
<script src="app.js" async></script>
- 위의 경우 어느 쪽이 먼저 실행되는지 알 수 없다. 이를 해결하기 위해
.js
파일을 하나로 통합하거나,async
속성 대신defer
속성을 지정하면 된다. - defer 속성은 문서 해석이 끝날 때까지 스크립트 실행을 지연시키는 것이다.
3. 객체
- Javascript의
객체
라는 이름
과 키
로 접근 가능한 배열 - 연상 배열(해시)
라고 정의했었다.
객체
란 단순한 집합이 아니고, 객체 자체가 하나의 개체
이며 내부에 포함된 요소
는 그 개체의 특성이나 동작을 나타내기 위해서 존재한다.
* 또한, 객체
를 중심으로 코드를 작성하는 방법을 객체지향이라고 한다.
3.1 new 연산자
- 데이터가 서로 충돌하여 애플리케이션이 올바르게 동작하지 못하는 것을 방지하기 위해 '원본을 복제한 복사본'을 조작해야 한다.
객체
의 복제를 만드는 것을 인스턴스화, 인스턴스화에 의해 만들어진 복제본을 인스턴스라고 한다.
var 변수명 = new 객체명([인수,...])
- 객체에는 객체를 초기화하기 위해 객체와 동일한 이름의 메소드가 준비되어 있는데, 초기화 메소드를
생성자(constructor)
라고 한다.
- 인스턴스가 보관된 변수는
인스턴스 변수
또는 객체 변수
라고 부르며, 프로퍼티/메소드
를 호출하려면 닷(.)
연산자를 사용한다.
변수명.프로퍼티명 [= 설정값];
변수명.메소드명([인수 [,...]]);
3.2 내장형 객체
- Javascript에는 많은 객체가 있는데, 가장 기본적인 것은
내장형 객체(Built-in Object)
이다.
참조변수(인스턴스 이름)= new 생성함수()
var bus = new Object();
document.write("bus색상 : "+this.color,"<br>");
//this는 내장 객체 bus를 의미한다.
- 날짜 정보 객체
var date = new Date();
객체
라는 이름
과 키
로 접근 가능한 배열 - 연상 배열(해시)
라고 정의했었다.객체
란 단순한 집합이 아니고, 객체 자체가 하나의 개체
이며 내부에 포함된 요소
는 그 개체의 특성이나 동작을 나타내기 위해서 존재한다.* 또한,
객체
를 중심으로 코드를 작성하는 방법을 객체지향이라고 한다.객체
의 복제를 만드는 것을 인스턴스화, 인스턴스화에 의해 만들어진 복제본을 인스턴스라고 한다.var 변수명 = new 객체명([인수,...])
생성자(constructor)
라고 한다.인스턴스 변수
또는 객체 변수
라고 부르며, 프로퍼티/메소드
를 호출하려면 닷(.)
연산자를 사용한다.변수명.프로퍼티명 [= 설정값];
변수명.메소드명([인수 [,...]]);
내장형 객체(Built-in Object)
이다.참조변수(인스턴스 이름)= new 생성함수()
var bus = new Object();
document.write("bus색상 : "+this.color,"<br>");
//this는 내장 객체 bus를 의미한다.
var date = new Date();
- 수학 관련 객체
- 배열 객체
- 문자열 객체
var str = new String(문자열);
이외에도 많은 내장형 객체가 있는데 꾸준히 반복하면서 살펴봐야겠다..
end
Author And Source
이 문제에 관하여([Javascript] 5. Strict, 객체, 내장형 객체), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@daekyeong/Javascript-5.-Strict-객체-내장형-객체저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)