일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- TinyMCE
- 청주
- Java
- 글쓰기
- Intent
- 자바
- androidstudio
- JavaScript
- 회원가입
- jQuery
- 에디터
- 게시판
- 생명주기
- Activity
- 아이콘
- Resources
- 영성
- 프로그래밍
- 안드로이드 AVD
- 안드로이드
- 제이쿼리
- Selector
- Android
- Spring
- java 8
- 웹개발
- CSS
- 주님의교회
- #청주주님의교회
- 인텐트
- Today
- Total
공부하는 블로그
[JavaScript] 자바스크립트 언어의 null 과 undefined 본문
* null
- 아무 값도 갖지 않음을 의미한다.
- 객체가 없음을 뜻한다.
- 주로 객체를 담을 변수를 초기화 할 때 많이 사용한다.
ex) null 값으로 데이터를 초기화하는 경우
1 2 3 4 5 6 7 8 9 10 11 | // 숫자 변수 초기화 var data1 = 0; // 문자 변수 초기화 var data2 = ""; // 논리형 변수 초기화 var data3 = false; // 객체 변수 초기화 var data4 = null; | cs |
// 이처럼 초깃값으로 null을 넣으면 소스코드 어디에선가 이변수에 클래스의 인스턴스를 대입함
var data3 = null ... data3 = new MyClass
* undefined
- 초기화되어 있지 않은 변수에 접근하려고 할 때 얻는 값이다.
- 존재하지 않는 객체 프로퍼티 값에 접근하려고 할 때 얻는 값이다.
- 존재하지 않는 배열의 원소 값에 접근하려고 할 때 얻는 값이다.
- 반환값이 없는 함수의 반환값이다.
- 실 인자가 전달되지 않은 형식인자이다.
자바스크립트 키워드 null은 아무런 값도 나타내지 않는 특수한 값이다. null은 보통 객체타입의 특수한 값, 즉 어떠한 객체도 나타내지 않는 값으로 취급한다. null은 다른 모든 값들과 구분되는 고유한 값이다. 어떤 변수가 null값을 가지면 여러분은 그 변수가 유효한 객체나 배열, 숫자 , 문자열또는 불리언 값을 담고 있지 않다는 것을 알 수 있다.
null은 불리언 문맥에서 사용되면 false로 변환된다. 숫자 문맥에서 사용되면 0으로 변환되고 문자열 문맥에서 사용되면 null로 변환된다.
자바스크립트에서 종종 사용되는 또 다른 특수한 값으로 undefined 값이 있다. undefined는 선언은 되었지만 값이 할당된 적이 없는 변수에 접근하거나, 존재하지 않는 객체 프로퍼티에 접근할 경우 반환되는 값이다. 이 특수한 undefined값은 null과 동일한 값이 아님을 유념하라.
ex) 변수를 선언하고 그 변수에 값을 대입하지 않은 경우
실행결과
// 변수를 선언한 후 아무런 값을 넣지 않은 경우 변수에는 undefined라는 값이 기본적으로 저장됩니다.
ex) 함수 인자 값 없이 함수를 호출하는 경우
실행결과
// 즉, 매개변수(인자)가 있는 함수를 인자 값 없이 호출하는 경우에도 해당 매개변수에 undefined가 저장됩니다.
ex) 존재하지 않는 객체의 프로퍼티에 접근하는 경우
1 2 3 4 5 6 | function MyClass() { thid.name="ddandongne"; } var test1 = new MyClass(); alert("test.name ="+test1.name); alert("test1.userName"+test1.userName); | cs |
// 다음과 같이 존재하지않는 변수에 접근하는 경우 undefined가 출력됩니다.
// 즉, 변수를 선언하고 값을 아무것도 넣지 않으면 undefined이 기본값으로 들어간다.
정리) undefined 변수의 기본 초깃값 // null은 객체를 담을 변수를 초기화 할 때 사용함
'Develop > JavaScript' 카테고리의 다른 글
[Javascript] 프로토타입 이해하기 (0) | 2018.03.06 |
---|---|
JavaScript 예제 Test용 작업 (0) | 2018.03.06 |
(JavaScript) 예약어 (0) | 2018.02.20 |
JavaScript와 Java 비교 (0) | 2018.02.20 |
Document Object Model (DOM) (0) | 2018.02.20 |