SlideShare a Scribd company logo
1 of 22
Javascript
basic
브라우저 위에서
HTML 알몸으로 태어나서
CSS
옷을 입고
Javascript
댄스를..
봄? BOM (Browser Object Model)
돔? DOM (Document Object Model)
BOM, DOM : OBJECT 모델링
HTML DOM-OBJECT 의 구성은 HTML, 스타일링은 CSS,
BOM, DOM 조작은 JAVASCRIPT
조금 성급한 요약
미확인
Step 2
basic-2
변수 제어 연산
변수 와 제어 와 연산
변수 - var
제어 - for, while, do while, if, switch 등
연산 - +-*/%&&||&|.. 등.
변수 선언
선언된 변수의 타입을 확인하고 싶으신경우
typeof 라는 명령을 사용하실 수 있습니다.
다음 출력의 결과를 생각해 보세요
var x=12; var y=“12” var z;
console.log(“x : ”+typeof x);
console.log(“y : ”+typeof y);
console.log(“z : ”+typeof z);
undefined 와 null
undefined 와 null은 같은 값일까요?
결론 부터 말하면 다르다 입니다.
undefined 은 정의 되지 않은 없는 값 인 반면
null 의 경우 값이 없다를 표현하는 object 입니다.
db-spring-res(serialize)
중복 선언
JS 에서 변수를 선언 하는 방식을
“선언형”("declaring" a variable.) 이라고 하는 데요.
선언 시점에는 메모리 공간만 확보하고, 실제 사용시
타입이 정해지는 방식입니다.
그러면 다음의 결과는 무엇 일까요?
(에러가 나지 않을까요 +.+)
var carName = "Volvo";
var carName;
console.log(“carName ”+carName);
대뜸 퀴즈
1. Javascript(ES5) 에서 변수 선언은 var로하는데요.
다음 연산의 a 와 b 의 값은 무엇 일까요?
var x = "Volvo" + 16 + 4;
var a = "Volvo" + 16 + 4;
var b = 16 + 4 + "Volvo";
Volvo164
20Volv
o
a b
JS(ES5) 에서는 이처럼
연산과 문자열을 혼용 할 경
우 내부에서 전환이 발생합
니다.
var a = "Volvo" + 16 + 4;
연산의 방향
=, ==, ===
마지막으로 = 에 대해서 생각해 볼까 하는 데요.
= 는 할당 연산자 입니다.
var a = “1”; 식으로 변수에 무언가를 담을때 사용합니다.
== 는 비교 연산입니다.
두 값을 비교할때 사용합니다.
=== 는 업격한 비교 연산입니다.
마찬가지로 두 값을 엄격하게 비교할때 사용합니다.
무엇이 다를까요?
=, ==, ===
다음 연산의 결과를 예측해 보세요.
console.log(“1==1 : ”+(“1”==1));
console.log(“1===1 : ”+(“1”===1));
console.log(“null==undefined : ”+(null==undefined));
console.log(“null===undefined : ”+(null===undefined));
C,JAVA 프로그래밍 언어에 대한 지식이 있다면
대부분이 유사 합니다.
다만 몇가지 부분에 대해서는
오늘 이야기 드린바와 같이 정확히 구분이 필요합니다.
마무리
microgomi
Step 3
basic 3
Array Object
a=[] b={}
object
(배열을 인자로 가질 수 있음)
object
(배열을 인자로 가질 수 있음)
value key-value
Array - push
끝에 값을 추가할때
Array - delete
delete > 삭제 한다 > undefined
pop > 하나를 뺀다
splice > 잘라 내거나 붙인다
var fruits = ["Banana", "Orange", "Apple", “Mango"];
fruits.splice(2, 0, "Lemon", “Kiwi”);
2 - 시작점
0 - 자를 개수
“Lemon”,”Kiwi” 추가할 것
splice -동사-
(밧줄의 두 끝을 함께 꼬아서) 잇다
(필름・테이프 등의 두 끝을) 붙이다[잇다]
Array - 정렬
var fruits = ["Banana", "Orange", "Apple", “Mango"];
fruits.sort();
fruits.reverse();
var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a - b});
function() - closure
var add = (function () {
var counter = 0;
return function () {return counter += 1;}
})();
A closure is a function having access to the parent
scope, even after the parent function has closed.

More Related Content

What's hot

[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...
[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...
[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...Seok-joon Yun
 
[C++ Korea] Effective Modern C++ Study item14 16 +신촌
[C++ Korea] Effective Modern C++ Study item14 16 +신촌[C++ Korea] Effective Modern C++ Study item14 16 +신촌
[C++ Korea] Effective Modern C++ Study item14 16 +신촌Seok-joon Yun
 
[C++ korea] effective modern c++ study item 2 understanding auto type deduc...
[C++ korea] effective modern c++ study   item 2 understanding auto type deduc...[C++ korea] effective modern c++ study   item 2 understanding auto type deduc...
[C++ korea] effective modern c++ study item 2 understanding auto type deduc...Seok-joon Yun
 
[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기
[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기
[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기Chris Ohk
 
[C++ korea] effective modern c++ study item8~10 정은식
[C++ korea] effective modern c++ study item8~10 정은식[C++ korea] effective modern c++ study item8~10 정은식
[C++ korea] effective modern c++ study item8~10 정은식은식 정
 
Template at c++
Template at c++Template at c++
Template at c++Lusain Kim
 
코딩인카페 C&JAVA 기초과정 C프로그래밍(3)
코딩인카페 C&JAVA 기초과정 C프로그래밍(3)코딩인카페 C&JAVA 기초과정 C프로그래밍(3)
코딩인카페 C&JAVA 기초과정 C프로그래밍(3)유익아카데미
 
[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23
[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23
[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23Seok-joon Yun
 
Secure coding-c-preprocessor-2
Secure coding-c-preprocessor-2Secure coding-c-preprocessor-2
Secure coding-c-preprocessor-2Seungyong Lee
 
[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...
[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...
[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...Seok-joon Yun
 
Refelction의 개념과 RTTR 라이브러리
Refelction의 개념과 RTTR 라이브러리Refelction의 개념과 RTTR 라이브러리
Refelction의 개념과 RTTR 라이브러리ssuser7c5a40
 
코딩인카페 C&JAVA 기초과정 C프로그래밍(1)
코딩인카페 C&JAVA 기초과정 C프로그래밍(1)코딩인카페 C&JAVA 기초과정 C프로그래밍(1)
코딩인카페 C&JAVA 기초과정 C프로그래밍(1)유익아카데미
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010MinGeun Park
 
Ec++ c 1,2 surmary
Ec++ c 1,2 surmaryEc++ c 1,2 surmary
Ec++ c 1,2 surmarySehyeon Nam
 
[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준
[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준
[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준Seok-joon Yun
 
[shaderx6]8.2 3d engine tools with c++cli
[shaderx6]8.2 3d engine tools with c++cli[shaderx6]8.2 3d engine tools with c++cli
[shaderx6]8.2 3d engine tools with c++cli종빈 오
 

What's hot (20)

[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...
[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...
[C++ korea] effective modern c++ study item 7 distinguish between () and {} w...
 
[C++ Korea] Effective Modern C++ Study item14 16 +신촌
[C++ Korea] Effective Modern C++ Study item14 16 +신촌[C++ Korea] Effective Modern C++ Study item14 16 +신촌
[C++ Korea] Effective Modern C++ Study item14 16 +신촌
 
C++11
C++11C++11
C++11
 
[C++ korea] effective modern c++ study item 2 understanding auto type deduc...
[C++ korea] effective modern c++ study   item 2 understanding auto type deduc...[C++ korea] effective modern c++ study   item 2 understanding auto type deduc...
[C++ korea] effective modern c++ study item 2 understanding auto type deduc...
 
[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기
[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기
[TechDays Korea 2015] 녹슨 C++ 코드에 모던 C++로 기름칠하기
 
[C++ korea] effective modern c++ study item8~10 정은식
[C++ korea] effective modern c++ study item8~10 정은식[C++ korea] effective modern c++ study item8~10 정은식
[C++ korea] effective modern c++ study item8~10 정은식
 
Lua script
Lua scriptLua script
Lua script
 
Changes in c++0x
Changes in c++0xChanges in c++0x
Changes in c++0x
 
Template at c++
Template at c++Template at c++
Template at c++
 
코딩인카페 C&JAVA 기초과정 C프로그래밍(3)
코딩인카페 C&JAVA 기초과정 C프로그래밍(3)코딩인카페 C&JAVA 기초과정 C프로그래밍(3)
코딩인카페 C&JAVA 기초과정 C프로그래밍(3)
 
[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23
[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23
[C++ korea] Effective Modern C++ 신촌 Study Item20,21,23
 
Secure coding-c-preprocessor-2
Secure coding-c-preprocessor-2Secure coding-c-preprocessor-2
Secure coding-c-preprocessor-2
 
[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...
[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...
[C++ Korea] Effective Modern C++ MVA item 9 Prefer alias declarations to type...
 
Refelction의 개념과 RTTR 라이브러리
Refelction의 개념과 RTTR 라이브러리Refelction의 개념과 RTTR 라이브러리
Refelction의 개념과 RTTR 라이브러리
 
코딩인카페 C&JAVA 기초과정 C프로그래밍(1)
코딩인카페 C&JAVA 기초과정 C프로그래밍(1)코딩인카페 C&JAVA 기초과정 C프로그래밍(1)
코딩인카페 C&JAVA 기초과정 C프로그래밍(1)
 
함수
함수함수
함수
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 
Ec++ c 1,2 surmary
Ec++ c 1,2 surmaryEc++ c 1,2 surmary
Ec++ c 1,2 surmary
 
[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준
[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준
[C++ Korea] Effective Modern C++ MVA item 8 Prefer nullptr to 0 and null +윤석준
 
[shaderx6]8.2 3d engine tools with c++cli
[shaderx6]8.2 3d engine tools with c++cli[shaderx6]8.2 3d engine tools with c++cli
[shaderx6]8.2 3d engine tools with c++cli
 

Similar to 자바스크립트.

0.javascript기본(~3일차내)
0.javascript기본(~3일차내)0.javascript기본(~3일차내)
0.javascript기본(~3일차내)Sung-hoon Ma
 
스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오Taeoh Kim
 
자바스크립트 기초문법~함수기초
자바스크립트 기초문법~함수기초자바스크립트 기초문법~함수기초
자바스크립트 기초문법~함수기초진수 정
 
Scala, Scalability
Scala, ScalabilityScala, Scalability
Scala, ScalabilityDongwook Lee
 
이산치수학 Project2
이산치수학 Project2이산치수학 Project2
이산치수학 Project2KoChungWook
 
Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713Yong Joon Moon
 
외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements민태 김
 
개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow양 한빛
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리ETRIBE_STG
 
Windows Debugging Technique #2
Windows Debugging Technique #2Windows Debugging Technique #2
Windows Debugging Technique #2Wooseok Seo
 
프론트엔드스터디 E03 - Javascript intro.
프론트엔드스터디 E03 - Javascript intro.프론트엔드스터디 E03 - Javascript intro.
프론트엔드스터디 E03 - Javascript intro.Young-Beom Rhee
 
Angular2 가기전 Type script소개
 Angular2 가기전 Type script소개 Angular2 가기전 Type script소개
Angular2 가기전 Type script소개Dong Jun Kwon
 
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로Oracle Korea
 
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기Jae Sung Park
 

Similar to 자바스크립트. (20)

You dont know_js
You dont know_jsYou dont know_js
You dont know_js
 
0.javascript기본(~3일차내)
0.javascript기본(~3일차내)0.javascript기본(~3일차내)
0.javascript기본(~3일차내)
 
스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오스칼라와 스파크 영혼의 듀오
스칼라와 스파크 영혼의 듀오
 
자바스크립트 기초문법~함수기초
자바스크립트 기초문법~함수기초자바스크립트 기초문법~함수기초
자바스크립트 기초문법~함수기초
 
Scalability
ScalabilityScalability
Scalability
 
Scala, Scalability
Scala, ScalabilityScala, Scalability
Scala, Scalability
 
이산치수학 Project2
이산치수학 Project2이산치수학 Project2
이산치수학 Project2
 
Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713Processing 기초 이해하기_20160713
Processing 기초 이해하기_20160713
 
외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements외계어 스터디 2/5 - Expressions & statements
외계어 스터디 2/5 - Expressions & statements
 
개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow개발자를 위한 공감세미나 tensor-flow
개발자를 위한 공감세미나 tensor-flow
 
Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리Javascript 완벽 가이드 정리
Javascript 완벽 가이드 정리
 
ES6 for Node.js Study 4주차
ES6 for Node.js Study 4주차ES6 for Node.js Study 4주차
ES6 for Node.js Study 4주차
 
Windows Debugging Technique #2
Windows Debugging Technique #2Windows Debugging Technique #2
Windows Debugging Technique #2
 
프론트엔드스터디 E03 - Javascript intro.
프론트엔드스터디 E03 - Javascript intro.프론트엔드스터디 E03 - Javascript intro.
프론트엔드스터디 E03 - Javascript intro.
 
Angular2 가기전 Type script소개
 Angular2 가기전 Type script소개 Angular2 가기전 Type script소개
Angular2 가기전 Type script소개
 
Javascript
JavascriptJavascript
Javascript
 
4-1. javascript
4-1. javascript4-1. javascript
4-1. javascript
 
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
[Main Session] 미래의 Java 미리보기 - 앰버와 발할라 프로젝트를 중심으로
 
Java.next
Java.nextJava.next
Java.next
 
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
[DEVIEW 2018] JavaScript 배틀그라운드로부터 살아남기
 

자바스크립트.

  • 2. 브라우저 위에서 HTML 알몸으로 태어나서 CSS 옷을 입고 Javascript 댄스를..
  • 3. 봄? BOM (Browser Object Model)
  • 4. 돔? DOM (Document Object Model)
  • 5. BOM, DOM : OBJECT 모델링 HTML DOM-OBJECT 의 구성은 HTML, 스타일링은 CSS, BOM, DOM 조작은 JAVASCRIPT 조금 성급한 요약 미확인
  • 8. 변수 와 제어 와 연산 변수 - var 제어 - for, while, do while, if, switch 등 연산 - +-*/%&&||&|.. 등.
  • 9. 변수 선언 선언된 변수의 타입을 확인하고 싶으신경우 typeof 라는 명령을 사용하실 수 있습니다. 다음 출력의 결과를 생각해 보세요 var x=12; var y=“12” var z; console.log(“x : ”+typeof x); console.log(“y : ”+typeof y); console.log(“z : ”+typeof z);
  • 10. undefined 와 null undefined 와 null은 같은 값일까요? 결론 부터 말하면 다르다 입니다. undefined 은 정의 되지 않은 없는 값 인 반면 null 의 경우 값이 없다를 표현하는 object 입니다. db-spring-res(serialize)
  • 11. 중복 선언 JS 에서 변수를 선언 하는 방식을 “선언형”("declaring" a variable.) 이라고 하는 데요. 선언 시점에는 메모리 공간만 확보하고, 실제 사용시 타입이 정해지는 방식입니다. 그러면 다음의 결과는 무엇 일까요? (에러가 나지 않을까요 +.+) var carName = "Volvo"; var carName; console.log(“carName ”+carName);
  • 12. 대뜸 퀴즈 1. Javascript(ES5) 에서 변수 선언은 var로하는데요. 다음 연산의 a 와 b 의 값은 무엇 일까요? var x = "Volvo" + 16 + 4; var a = "Volvo" + 16 + 4; var b = 16 + 4 + "Volvo"; Volvo164 20Volv o a b
  • 13. JS(ES5) 에서는 이처럼 연산과 문자열을 혼용 할 경 우 내부에서 전환이 발생합 니다. var a = "Volvo" + 16 + 4; 연산의 방향
  • 14. =, ==, === 마지막으로 = 에 대해서 생각해 볼까 하는 데요. = 는 할당 연산자 입니다. var a = “1”; 식으로 변수에 무언가를 담을때 사용합니다. == 는 비교 연산입니다. 두 값을 비교할때 사용합니다. === 는 업격한 비교 연산입니다. 마찬가지로 두 값을 엄격하게 비교할때 사용합니다. 무엇이 다를까요?
  • 15. =, ==, === 다음 연산의 결과를 예측해 보세요. console.log(“1==1 : ”+(“1”==1)); console.log(“1===1 : ”+(“1”===1)); console.log(“null==undefined : ”+(null==undefined)); console.log(“null===undefined : ”+(null===undefined));
  • 16. C,JAVA 프로그래밍 언어에 대한 지식이 있다면 대부분이 유사 합니다. 다만 몇가지 부분에 대해서는 오늘 이야기 드린바와 같이 정확히 구분이 필요합니다. 마무리 microgomi
  • 18. Array Object a=[] b={} object (배열을 인자로 가질 수 있음) object (배열을 인자로 가질 수 있음) value key-value
  • 19. Array - push 끝에 값을 추가할때
  • 20. Array - delete delete > 삭제 한다 > undefined pop > 하나를 뺀다 splice > 잘라 내거나 붙인다 var fruits = ["Banana", "Orange", "Apple", “Mango"]; fruits.splice(2, 0, "Lemon", “Kiwi”); 2 - 시작점 0 - 자를 개수 “Lemon”,”Kiwi” 추가할 것 splice -동사- (밧줄의 두 끝을 함께 꼬아서) 잇다 (필름・테이프 등의 두 끝을) 붙이다[잇다]
  • 21. Array - 정렬 var fruits = ["Banana", "Orange", "Apple", “Mango"]; fruits.sort(); fruits.reverse(); var points = [40, 100, 1, 5, 25, 10]; points.sort(function(a, b){return a - b});
  • 22. function() - closure var add = (function () { var counter = 0; return function () {return counter += 1;} })(); A closure is a function having access to the parent scope, even after the parent function has closed.