SlideShare a Scribd company logo
2016 자바카페 스파르탄 스터디
INSIDE Java Script 1-3
JAVACAFE
박진현
2016 자바카페 스파르탄 스터디들어가기 앞서..
 본 슬라이드는 2016 자바카페 스파르탄 스터디를 위해
제작되었습니다.
 본 슬라이드의 대부분의 내용은
인사이드 자바스크립트
(2014 송형주, 고현준) 의
내용을 참고하였습니다.
2016 자바카페 스파르탄 스터디목 차
 자바스크립트 기본 개요
 자바스크립트 개발 환경
 자바스크립트 데이터 타입과 연산자
2016 자바카페 스파르탄 스터디자바스크립트 기본 개요
 자바스크립트 활용범위
 웹 개발 (jQuery, React JS, Angularjs, etc..)
 서버 사이드 개발 (Node.js)
 응용프로그램 개발(Sencha ExtJS, React Native)
2016 자바카페 스파르탄 스터디자바스크립트 핵심 개념
 객체
 자바스크립트를 구성하는 거의 모든것은 객체
 기본타입 : boolean, number, string, null, undefined
 나머지는? 죄다 객체
 함수
 함수도 객체, 심지어 일급 객체!
 일급 객체 : 다른 객체들에 적용가능한 연산을 모두 지원하는 객체
 변수나 데이터구조안에 담을수 있음
 파라미터로 전달가능
 반환값으로 사용가능
 할당에 사용된 이름과 관계없이 고유한 구별 가능
 동적으로 프로퍼티 할당이 가능
2016 자바카페 스파르탄 스터디자바스크립트 핵심 개념
 프로토타입
 모든객체는 숨겨진 링크인 프로토타입을 가짐
 실행컨텍스트와 클로저
 자신만의 독특한 과정으로 실행컨텍스트 만들고 그안에서
실행이 이루어짐
 실행컨텍스트는 자신만의 유효범위를 가짐
 이과정을 통해서 클로저를 구현할수 있음
 Closure : 로컬변수를 참조하고 있는 함수 내의 함수
자신의 범위(Scope)밖에 있는 변수들에 접근할수 있는 함수
2016 자바카페 스파르탄 스터디자바스크립트 핵심 개념
 단점 ?
 느슨한 타입체크 (말이 많음)
 전역객체의 존재 (더 말이 많음)
2016 자바카페 스파르탄 스터디자바스크립트 개발 환경
 Chrome + F12
2016 자바카페 스파르탄 스터디자바스크립트 데이터 타입과 연산자
 primitive type
 number
 string
 Boolean
 undefined
 null
 reference type
 object
 array
 function
 regular expression
2016 자바카페 스파르탄 스터디자바스크립트 기본타입
 number
 모든 숫자를 64bit 부동소수점으로 저장(java의 double)
 string
 ‘,”로 생성, immutable 객체(생성되면 변하지 않음)
 boolean
 null, undefined
 undefined 는 타입이자 값을 나타냄
2016 자바카페 스파르탄 스터디자바스크립트 참조타입
 object
 이름(key) : 값(value)를 저장하는 컨테이너
 생성하는 법
 var qoo = new Object()
 var qoo = {}
 var qoo = function(){ return {} }(???)
 객체 프로퍼티 읽기/쓰기/갱신
 qoo[“taste”] = “honey butter”
 qoo.taste = “lemon”
 해당 객체에 프로퍼티가 이미 존재하는경우 이를 갱신하지만,
만일 존재하지 않는경우 새로운 프로퍼티를 생성한후 값을 할당함
 접근하려는 프로퍼티가 예약어나 표현식의 경우 대괄호 표기법만을 사용
2016 자바카페 스파르탄 스터디자바스크립트 참조타입
 for in
 delete
 프로퍼티 삭제(O)
 객체 삭제(X)
2016 자바카페 스파르탄 스터디자바스크립트 참조타입 객체 비교
 기본 타입은 비교 시 값이 동일하면 true
 참조 타입의 경우 참조 값이 같아야만 true
 하지만 JSON이 출동한다면..?
2016 자바카페 스파르탄 스터디자바스크립트 참조타입 특징
 call by value(primitive type)
 call by reference(reference type)
2016 자바카페 스파르탄 스터디자바스크립트 프로토타입
 모든 객체는 자신의 부모 역할을 하는 객체가 있음
 크롬, Edge, IE11 은 __proto__ 객체가 해당 역할을 수행
 객체 리터럴(표기법) 방식으로
생성된 객체는 Object.prototype가
프로토타입 객체로 설정됨
 객체를 생성할때 결정한 프로타입을
임의로 변경 가능
2016 자바카페 스파르탄 스터디자바스크립트 배열
 [] 혹은 new Array()
 length 프로퍼티는 배열인덱스중
가장 큰값(+1)을 기준으로 설정
 length 프로퍼티는 임의 조작가능
 배열의 프로토타입 객체는
Array.protype 객체
2016 자바카페 스파르탄 스터디자바스크립트 배열 프로퍼티 열거 및 삭제
 for in 문으로 열거 가능, 단 모든 프로퍼티가 열거됨
 delete 연산자로 해당 요소를 undefined로 설정(삭제X)
 splice 메소드를 통해 배열에서 해당 객체 제거
2016 자바카페 스파르탄 스터디자바스크립트 유사 배열 객체
 length 프로퍼티를 가진 객체 === 유사배열객체
 객체(O) / 배열 (X) -> __proto__ 가 다름
 apply() 메소드를 사용하면 배열 메소드 사용가능
 arguments , jQuery 객체가 유사배열 객체
 4장에서 추가설명예정 (사실 아직 왜 필요한지 모르겠음)
2016 자바카페 스파르탄 스터디자바스크립트 유사 배열 객체
 length 프로퍼티를 가진 객체 === 유사배열객체
 객체(O) / 배열 (X) -> __proto__ 가 다름
 apply() 메소드를 사용하면 배열 메소드 사용가능
 arguments , jQuery 객체가 유사배열 객체
 4장에서 추가설명예정 (사실 아직 왜 필요한지 모르겠음)
2016 자바카페 스파르탄 스터디자바스크립트 연산자
 +, typeof, ==, ===
 == 연산자는 비교하는 대상이 다른경우 형변환
 === 연산자는 형 변환을 하지 않음

More Related Content

What's hot

Javascript 를 perl에서 mini-language 로 사용하기
Javascript 를 perl에서 mini-language 로 사용하기Javascript 를 perl에서 mini-language 로 사용하기
Javascript 를 perl에서 mini-language 로 사용하기HyunSeung Kim
 
프론트엔드스터디 E04 js function
프론트엔드스터디 E04 js function프론트엔드스터디 E04 js function
프론트엔드스터디 E04 js function
Young-Beom Rhee
 
자바에서 null을 안전하게 다루는 방법
자바에서 null을 안전하게 다루는 방법자바에서 null을 안전하게 다루는 방법
자바에서 null을 안전하게 다루는 방법
Sungchul Park
 
0.javascript기본(~3일차내)
0.javascript기본(~3일차내)0.javascript기본(~3일차내)
0.javascript기본(~3일차내)Sung-hoon Ma
 
자바스터디 3 2
자바스터디 3 2자바스터디 3 2
자바스터디 3 2jangpd007
 
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
Oracle Korea
 
동시성 프로그래밍 하기 좋은 Clojure
동시성 프로그래밍 하기 좋은 Clojure동시성 프로그래밍 하기 좋은 Clojure
동시성 프로그래밍 하기 좋은 Clojure
Eunmin Kim
 
Java 이해하기 쉬운 코드 20210405
Java 이해하기 쉬운 코드 20210405Java 이해하기 쉬운 코드 20210405
Java 이해하기 쉬운 코드 20210405
Hyosang Hong
 
ECMAScript 6의 새로운 것들!
ECMAScript 6의 새로운 것들!ECMAScript 6의 새로운 것들!
ECMAScript 6의 새로운 것들!
WooYoung Cho
 
Django와 flask
Django와 flaskDjango와 flask
Django와 flask
Jiho Lee
 
Angular2 가기전 Type script소개
 Angular2 가기전 Type script소개 Angular2 가기전 Type script소개
Angular2 가기전 Type script소개
Dong Jun Kwon
 
Just java
Just javaJust java
Just java
Jong Wook Kim
 
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
Rx Java 살짝 적용기
Rx Java 살짝 적용기Rx Java 살짝 적용기
Rx Java 살짝 적용기
Younghyun Kim
 
Java lambda
Java lambdaJava lambda
Java lambda
Hyosang Hong
 
Light Tutorial Django
Light Tutorial DjangoLight Tutorial Django
Light Tutorial Django
Kwangyoun Jung
 
4-1. javascript
4-1. javascript4-1. javascript
4-1. javascript
JinKyoungHeo
 
자바스크립트 프로토타입 및 클래스
자바스크립트 프로토타입 및 클래스자바스크립트 프로토타입 및 클래스
자바스크립트 프로토타입 및 클래스
Lee Dong Wook
 
자바8강의 0강. java8 overview
자바8강의 0강. java8 overview자바8강의 0강. java8 overview
자바8강의 0강. java8 overview
Sejong Park
 
Isomorphicspring Isomorphic - spring web seminar 2015
Isomorphicspring Isomorphic - spring web seminar 2015Isomorphicspring Isomorphic - spring web seminar 2015
Isomorphicspring Isomorphic - spring web seminar 2015
sung yong jung
 

What's hot (20)

Javascript 를 perl에서 mini-language 로 사용하기
Javascript 를 perl에서 mini-language 로 사용하기Javascript 를 perl에서 mini-language 로 사용하기
Javascript 를 perl에서 mini-language 로 사용하기
 
프론트엔드스터디 E04 js function
프론트엔드스터디 E04 js function프론트엔드스터디 E04 js function
프론트엔드스터디 E04 js function
 
자바에서 null을 안전하게 다루는 방법
자바에서 null을 안전하게 다루는 방법자바에서 null을 안전하게 다루는 방법
자바에서 null을 안전하게 다루는 방법
 
0.javascript기본(~3일차내)
0.javascript기본(~3일차내)0.javascript기본(~3일차내)
0.javascript기본(~3일차내)
 
자바스터디 3 2
자바스터디 3 2자바스터디 3 2
자바스터디 3 2
 
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
 
동시성 프로그래밍 하기 좋은 Clojure
동시성 프로그래밍 하기 좋은 Clojure동시성 프로그래밍 하기 좋은 Clojure
동시성 프로그래밍 하기 좋은 Clojure
 
Java 이해하기 쉬운 코드 20210405
Java 이해하기 쉬운 코드 20210405Java 이해하기 쉬운 코드 20210405
Java 이해하기 쉬운 코드 20210405
 
ECMAScript 6의 새로운 것들!
ECMAScript 6의 새로운 것들!ECMAScript 6의 새로운 것들!
ECMAScript 6의 새로운 것들!
 
Django와 flask
Django와 flaskDjango와 flask
Django와 flask
 
Angular2 가기전 Type script소개
 Angular2 가기전 Type script소개 Angular2 가기전 Type script소개
Angular2 가기전 Type script소개
 
Just java
Just javaJust java
Just java
 
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
(스프링초보자를위한)스프링 컨텍스트 설정과 관련된 어노테이션
 
Rx Java 살짝 적용기
Rx Java 살짝 적용기Rx Java 살짝 적용기
Rx Java 살짝 적용기
 
Java lambda
Java lambdaJava lambda
Java lambda
 
Light Tutorial Django
Light Tutorial DjangoLight Tutorial Django
Light Tutorial Django
 
4-1. javascript
4-1. javascript4-1. javascript
4-1. javascript
 
자바스크립트 프로토타입 및 클래스
자바스크립트 프로토타입 및 클래스자바스크립트 프로토타입 및 클래스
자바스크립트 프로토타입 및 클래스
 
자바8강의 0강. java8 overview
자바8강의 0강. java8 overview자바8강의 0강. java8 overview
자바8강의 0강. java8 overview
 
Isomorphicspring Isomorphic - spring web seminar 2015
Isomorphicspring Isomorphic - spring web seminar 2015Isomorphicspring Isomorphic - spring web seminar 2015
Isomorphicspring Isomorphic - spring web seminar 2015
 

Viewers also liked

JavaScript OOP Pattern
JavaScript OOP PatternJavaScript OOP Pattern
JavaScript OOP Pattern
지수 윤
 
WEBUI Advanced중간시험
WEBUI Advanced중간시험WEBUI Advanced중간시험
WEBUI Advanced중간시험
지수 윤
 
9주 dom & event advanced
9주  dom & event advanced9주  dom & event advanced
9주 dom & event advanced지수 윤
 
[WEB UI BASIC] Javascript 2탄
[WEB UI BASIC] Javascript 2탄[WEB UI BASIC] Javascript 2탄
[WEB UI BASIC] Javascript 2탄
Jae Woo Woo
 
7주 JavaScript 실습
7주 JavaScript 실습7주 JavaScript 실습
7주 JavaScript 실습
지수 윤
 
재사용가능한 서비스코드제작
재사용가능한 서비스코드제작재사용가능한 서비스코드제작
재사용가능한 서비스코드제작
지수 윤
 
자바스크립트 핵심 가이드
자바스크립트 핵심 가이드자바스크립트 핵심 가이드
자바스크립트 핵심 가이드
재원 변
 
160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'
160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'
160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'
재원 변
 
퍼블리셔, 디자인을 퍼블리싱하다
퍼블리셔, 디자인을 퍼블리싱하다퍼블리셔, 디자인을 퍼블리싱하다
퍼블리셔, 디자인을 퍼블리싱하다
jeong seok yang
 
명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI우영 주
 
앱밤_시간표
앱밤_시간표앱밤_시간표
앱밤_시간표재원 변
 
JavaScript Debugging (동영상강의자료)
JavaScript Debugging (동영상강의자료)JavaScript Debugging (동영상강의자료)
JavaScript Debugging (동영상강의자료)
지수 윤
 
Javascript Closure
Javascript ClosureJavascript Closure
Javascript Closure지수 윤
 
JS특징(scope,this,closure)
JS특징(scope,this,closure)JS특징(scope,this,closure)
JS특징(scope,this,closure)
지수 윤
 
비동기와 이벤트큐 수업자료
비동기와 이벤트큐 수업자료비동기와 이벤트큐 수업자료
비동기와 이벤트큐 수업자료
지수 윤
 
크로스브라우징
크로스브라우징크로스브라우징
크로스브라우징
지수 윤
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
Rhio Kim
 
8주 dom & event basic
8주  dom & event basic8주  dom & event basic
8주 dom & event basic지수 윤
 
4주 CSS Layout
4주 CSS Layout4주 CSS Layout
4주 CSS Layout지수 윤
 
The LESS 기초 : The Dynamic Styleshee Language Basic
The LESS 기초 : The Dynamic Styleshee Language BasicThe LESS 기초 : The Dynamic Styleshee Language Basic
The LESS 기초 : The Dynamic Styleshee Language Basic
jeong seok yang
 

Viewers also liked (20)

JavaScript OOP Pattern
JavaScript OOP PatternJavaScript OOP Pattern
JavaScript OOP Pattern
 
WEBUI Advanced중간시험
WEBUI Advanced중간시험WEBUI Advanced중간시험
WEBUI Advanced중간시험
 
9주 dom & event advanced
9주  dom & event advanced9주  dom & event advanced
9주 dom & event advanced
 
[WEB UI BASIC] Javascript 2탄
[WEB UI BASIC] Javascript 2탄[WEB UI BASIC] Javascript 2탄
[WEB UI BASIC] Javascript 2탄
 
7주 JavaScript 실습
7주 JavaScript 실습7주 JavaScript 실습
7주 JavaScript 실습
 
재사용가능한 서비스코드제작
재사용가능한 서비스코드제작재사용가능한 서비스코드제작
재사용가능한 서비스코드제작
 
자바스크립트 핵심 가이드
자바스크립트 핵심 가이드자바스크립트 핵심 가이드
자바스크립트 핵심 가이드
 
160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'
160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'
160716 클리어보스 발표자료 '내 인생의 첫 번째 스타트업'
 
퍼블리셔, 디자인을 퍼블리싱하다
퍼블리셔, 디자인을 퍼블리싱하다퍼블리셔, 디자인을 퍼블리싱하다
퍼블리셔, 디자인을 퍼블리싱하다
 
명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI명세부터 깨우치는 FILEAPI
명세부터 깨우치는 FILEAPI
 
앱밤_시간표
앱밤_시간표앱밤_시간표
앱밤_시간표
 
JavaScript Debugging (동영상강의자료)
JavaScript Debugging (동영상강의자료)JavaScript Debugging (동영상강의자료)
JavaScript Debugging (동영상강의자료)
 
Javascript Closure
Javascript ClosureJavascript Closure
Javascript Closure
 
JS특징(scope,this,closure)
JS특징(scope,this,closure)JS특징(scope,this,closure)
JS특징(scope,this,closure)
 
비동기와 이벤트큐 수업자료
비동기와 이벤트큐 수업자료비동기와 이벤트큐 수업자료
비동기와 이벤트큐 수업자료
 
크로스브라우징
크로스브라우징크로스브라우징
크로스브라우징
 
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
웹 소프트웨어 시대의 새로운 롤(role) 모델, 자바스크립트
 
8주 dom & event basic
8주  dom & event basic8주  dom & event basic
8주 dom & event basic
 
4주 CSS Layout
4주 CSS Layout4주 CSS Layout
4주 CSS Layout
 
The LESS 기초 : The Dynamic Styleshee Language Basic
The LESS 기초 : The Dynamic Styleshee Language BasicThe LESS 기초 : The Dynamic Styleshee Language Basic
The LESS 기초 : The Dynamic Styleshee Language Basic
 

Similar to 자바카페 스터디- INSIDE JS 1-3

Javascript
JavascriptJavascript
Javascript
Joshua Yoon
 
이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)
이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)
이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)
MIN SEOK KOO
 
Hacosa js study 2주차
Hacosa js study 2주차Hacosa js study 2주차
Hacosa js study 2주차
Seong Bong Ji
 
비전공자의 자바스크립트 도전기
비전공자의 자바스크립트 도전기비전공자의 자바스크립트 도전기
비전공자의 자바스크립트 도전기
jeong seok yang
 
Java tutorial
Java tutorialJava tutorial
Java tutorial
ssuser34b989
 
엄준일 04일차 HTML/Javascript 교육
엄준일 04일차 HTML/Javascript 교육엄준일 04일차 HTML/Javascript 교육
엄준일 04일차 HTML/Javascript 교육준일 엄
 
[하코사 세미나] 비전공자의 자바스크립트 도전기
[하코사 세미나] 비전공자의 자바스크립트 도전기 [하코사 세미나] 비전공자의 자바스크립트 도전기
[하코사 세미나] 비전공자의 자바스크립트 도전기
인권 김
 
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
Javascript 교육자료 pdf
Javascript 교육자료 pdfJavascript 교육자료 pdf
Javascript 교육자료 pdf
Hyosang Hong
 
5.Spring IoC&DI(DI와 관련된 어노테이션)
5.Spring IoC&DI(DI와 관련된 어노테이션)5.Spring IoC&DI(DI와 관련된 어노테이션)
5.Spring IoC&DI(DI와 관련된 어노테이션)
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
Java, android 스터티1
Java, android 스터티1Java, android 스터티1
Java, android 스터티1
Heejun Kim
 
자바 테스트 자동화
자바 테스트 자동화자바 테스트 자동화
자바 테스트 자동화
Sungchul Park
 
I phone 2 release
I phone 2 releaseI phone 2 release
I phone 2 release
Jaehyeuk Oh
 
Jdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamicJdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamicknight1128
 
JVM 메모리 해부학
JVM 메모리 해부학JVM 메모리 해부학
JVM 메모리 해부학
Greg Lee
 
Java8 & Lambda
Java8 & LambdaJava8 & Lambda
Java8 & Lambda
기현 황
 
[H3 2012] 꽃보다 Scala
[H3 2012] 꽃보다 Scala[H3 2012] 꽃보다 Scala
[H3 2012] 꽃보다 Scala
KTH, 케이티하이텔
 
Javascript 조금 더 잘 알기
Javascript 조금 더 잘 알기Javascript 조금 더 잘 알기
Javascript 조금 더 잘 알기
jongho jeong
 
모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review
DataUs
 
Java advancd ed10
Java advancd ed10Java advancd ed10
Java advancd ed10
hungrok
 

Similar to 자바카페 스터디- INSIDE JS 1-3 (20)

Javascript
JavascriptJavascript
Javascript
 
이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)
이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)
이것이 자바다 Chap.11 기본 API 클래스(java)(KOR)
 
Hacosa js study 2주차
Hacosa js study 2주차Hacosa js study 2주차
Hacosa js study 2주차
 
비전공자의 자바스크립트 도전기
비전공자의 자바스크립트 도전기비전공자의 자바스크립트 도전기
비전공자의 자바스크립트 도전기
 
Java tutorial
Java tutorialJava tutorial
Java tutorial
 
엄준일 04일차 HTML/Javascript 교육
엄준일 04일차 HTML/Javascript 교육엄준일 04일차 HTML/Javascript 교육
엄준일 04일차 HTML/Javascript 교육
 
[하코사 세미나] 비전공자의 자바스크립트 도전기
[하코사 세미나] 비전공자의 자바스크립트 도전기 [하코사 세미나] 비전공자의 자바스크립트 도전기
[하코사 세미나] 비전공자의 자바스크립트 도전기
 
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
[국비지원교육/재직자/실업자환급교육/IT실무학원추천/스프링교육추천]#5.스프링프레임워크 & 마이바티스 (Spring Framework, M...
 
Javascript 교육자료 pdf
Javascript 교육자료 pdfJavascript 교육자료 pdf
Javascript 교육자료 pdf
 
5.Spring IoC&DI(DI와 관련된 어노테이션)
5.Spring IoC&DI(DI와 관련된 어노테이션)5.Spring IoC&DI(DI와 관련된 어노테이션)
5.Spring IoC&DI(DI와 관련된 어노테이션)
 
Java, android 스터티1
Java, android 스터티1Java, android 스터티1
Java, android 스터티1
 
자바 테스트 자동화
자바 테스트 자동화자바 테스트 자동화
자바 테스트 자동화
 
I phone 2 release
I phone 2 releaseI phone 2 release
I phone 2 release
 
Jdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamicJdk(java) 7 - 5. invoke-dynamic
Jdk(java) 7 - 5. invoke-dynamic
 
JVM 메모리 해부학
JVM 메모리 해부학JVM 메모리 해부학
JVM 메모리 해부학
 
Java8 & Lambda
Java8 & LambdaJava8 & Lambda
Java8 & Lambda
 
[H3 2012] 꽃보다 Scala
[H3 2012] 꽃보다 Scala[H3 2012] 꽃보다 Scala
[H3 2012] 꽃보다 Scala
 
Javascript 조금 더 잘 알기
Javascript 조금 더 잘 알기Javascript 조금 더 잘 알기
Javascript 조금 더 잘 알기
 
모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review모던 자바스크립트 Deep Dive Review
모던 자바스크립트 Deep Dive Review
 
Java advancd ed10
Java advancd ed10Java advancd ed10
Java advancd ed10
 

자바카페 스터디- INSIDE JS 1-3

  • 1. 2016 자바카페 스파르탄 스터디 INSIDE Java Script 1-3 JAVACAFE 박진현
  • 2. 2016 자바카페 스파르탄 스터디들어가기 앞서..  본 슬라이드는 2016 자바카페 스파르탄 스터디를 위해 제작되었습니다.  본 슬라이드의 대부분의 내용은 인사이드 자바스크립트 (2014 송형주, 고현준) 의 내용을 참고하였습니다.
  • 3. 2016 자바카페 스파르탄 스터디목 차  자바스크립트 기본 개요  자바스크립트 개발 환경  자바스크립트 데이터 타입과 연산자
  • 4. 2016 자바카페 스파르탄 스터디자바스크립트 기본 개요  자바스크립트 활용범위  웹 개발 (jQuery, React JS, Angularjs, etc..)  서버 사이드 개발 (Node.js)  응용프로그램 개발(Sencha ExtJS, React Native)
  • 5. 2016 자바카페 스파르탄 스터디자바스크립트 핵심 개념  객체  자바스크립트를 구성하는 거의 모든것은 객체  기본타입 : boolean, number, string, null, undefined  나머지는? 죄다 객체  함수  함수도 객체, 심지어 일급 객체!  일급 객체 : 다른 객체들에 적용가능한 연산을 모두 지원하는 객체  변수나 데이터구조안에 담을수 있음  파라미터로 전달가능  반환값으로 사용가능  할당에 사용된 이름과 관계없이 고유한 구별 가능  동적으로 프로퍼티 할당이 가능
  • 6. 2016 자바카페 스파르탄 스터디자바스크립트 핵심 개념  프로토타입  모든객체는 숨겨진 링크인 프로토타입을 가짐  실행컨텍스트와 클로저  자신만의 독특한 과정으로 실행컨텍스트 만들고 그안에서 실행이 이루어짐  실행컨텍스트는 자신만의 유효범위를 가짐  이과정을 통해서 클로저를 구현할수 있음  Closure : 로컬변수를 참조하고 있는 함수 내의 함수 자신의 범위(Scope)밖에 있는 변수들에 접근할수 있는 함수
  • 7. 2016 자바카페 스파르탄 스터디자바스크립트 핵심 개념  단점 ?  느슨한 타입체크 (말이 많음)  전역객체의 존재 (더 말이 많음)
  • 8. 2016 자바카페 스파르탄 스터디자바스크립트 개발 환경  Chrome + F12
  • 9. 2016 자바카페 스파르탄 스터디자바스크립트 데이터 타입과 연산자  primitive type  number  string  Boolean  undefined  null  reference type  object  array  function  regular expression
  • 10. 2016 자바카페 스파르탄 스터디자바스크립트 기본타입  number  모든 숫자를 64bit 부동소수점으로 저장(java의 double)  string  ‘,”로 생성, immutable 객체(생성되면 변하지 않음)  boolean  null, undefined  undefined 는 타입이자 값을 나타냄
  • 11. 2016 자바카페 스파르탄 스터디자바스크립트 참조타입  object  이름(key) : 값(value)를 저장하는 컨테이너  생성하는 법  var qoo = new Object()  var qoo = {}  var qoo = function(){ return {} }(???)  객체 프로퍼티 읽기/쓰기/갱신  qoo[“taste”] = “honey butter”  qoo.taste = “lemon”  해당 객체에 프로퍼티가 이미 존재하는경우 이를 갱신하지만, 만일 존재하지 않는경우 새로운 프로퍼티를 생성한후 값을 할당함  접근하려는 프로퍼티가 예약어나 표현식의 경우 대괄호 표기법만을 사용
  • 12. 2016 자바카페 스파르탄 스터디자바스크립트 참조타입  for in  delete  프로퍼티 삭제(O)  객체 삭제(X)
  • 13. 2016 자바카페 스파르탄 스터디자바스크립트 참조타입 객체 비교  기본 타입은 비교 시 값이 동일하면 true  참조 타입의 경우 참조 값이 같아야만 true  하지만 JSON이 출동한다면..?
  • 14. 2016 자바카페 스파르탄 스터디자바스크립트 참조타입 특징  call by value(primitive type)  call by reference(reference type)
  • 15. 2016 자바카페 스파르탄 스터디자바스크립트 프로토타입  모든 객체는 자신의 부모 역할을 하는 객체가 있음  크롬, Edge, IE11 은 __proto__ 객체가 해당 역할을 수행  객체 리터럴(표기법) 방식으로 생성된 객체는 Object.prototype가 프로토타입 객체로 설정됨  객체를 생성할때 결정한 프로타입을 임의로 변경 가능
  • 16. 2016 자바카페 스파르탄 스터디자바스크립트 배열  [] 혹은 new Array()  length 프로퍼티는 배열인덱스중 가장 큰값(+1)을 기준으로 설정  length 프로퍼티는 임의 조작가능  배열의 프로토타입 객체는 Array.protype 객체
  • 17. 2016 자바카페 스파르탄 스터디자바스크립트 배열 프로퍼티 열거 및 삭제  for in 문으로 열거 가능, 단 모든 프로퍼티가 열거됨  delete 연산자로 해당 요소를 undefined로 설정(삭제X)  splice 메소드를 통해 배열에서 해당 객체 제거
  • 18. 2016 자바카페 스파르탄 스터디자바스크립트 유사 배열 객체  length 프로퍼티를 가진 객체 === 유사배열객체  객체(O) / 배열 (X) -> __proto__ 가 다름  apply() 메소드를 사용하면 배열 메소드 사용가능  arguments , jQuery 객체가 유사배열 객체  4장에서 추가설명예정 (사실 아직 왜 필요한지 모르겠음)
  • 19. 2016 자바카페 스파르탄 스터디자바스크립트 유사 배열 객체  length 프로퍼티를 가진 객체 === 유사배열객체  객체(O) / 배열 (X) -> __proto__ 가 다름  apply() 메소드를 사용하면 배열 메소드 사용가능  arguments , jQuery 객체가 유사배열 객체  4장에서 추가설명예정 (사실 아직 왜 필요한지 모르겠음)
  • 20. 2016 자바카페 스파르탄 스터디자바스크립트 연산자  +, typeof, ==, ===  == 연산자는 비교하는 대상이 다른경우 형변환  === 연산자는 형 변환을 하지 않음