SlideShare a Scribd company logo
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS
===
STATIC UI
INTERACTIVE
===
GOOD UX
html, css code?
<div class="accordion__item">
<h3 class="accordion__title js-title">A random title</h3>
<p class="accordion__copy js-copy">By not having the imagination tis</p>
</div>
.foo {
@include prefix(transform, rotate(90deg), ('webkit', 'ms'));
}
.foo {
@include prefix(transform, rotate(90deg), ('webkit', 'ms'));
}
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
“ 첨에 들어가면 이미지가 겁나 늦게 떠..
리액튼가 그거때문에 그런거아냐?”
- 사랑하는 우리 사장님,
“ API 변경됐다네요, 이참에
promise쓴거 async 기반으로 좀 개선해보고요.
가끔 데이터 못가져올때가 있다는데,
실패한 경우 메시지 처리도 같이 고려해봐야할 거 같아요.
아참, 슬라이딩 애니메이션 좀 느리다는데, image 로딩과 겹친 렌더링 문
제 같아요.. 원인찾아서 DOM조작 좀 다시 해보죠.”
“ 우리 사이트 리액트인가 그거에요? 왜이렇게 느려요?”
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
var foo = 1;
var foo = 1;
var var = foo + 1;
Uncaught SyntaxError: Unexpected token var
var foo = 1;
var bar = foo + 1;
var foo = 1;
var bar = foo + 1;
plusOne() //2
function plusOne() {
var foo = 1;
var bar = foo + 1;
return bar;
}
plusOne() //2
function plusOne(base) {
var bar = base + 1;
return bar;
}
var foo = 1;
plusOne(foo) //2
function plusOne(base) {
const bar = base + 1;
return bar;
}
var foo = 1;
plusOne(foo) //2
function plusOne(base) {
const bar = base + 1;
bar = bar + 0;
return bar;
}
var foo = 1;
plusOne(foo);
VM1887:3 Uncaught TypeError: Assignment to
constant variable.
HTML,CSS Next
function plusOne(base) {
const bar = base + 1;
debugger;
bar = bar + 0;
return bar;
}
var foo = 1;
plusOne(foo);
HTML,CSS Next
function plusOne(base) {
const bar = base + 1;
return bar;
}
var foo = 1;
plusOne(foo); //2
function plusOne(base) {
const bar = base + 1;
return bar;
}
var foo = '1';
plusOne(foo); //11
function plusOne(base) {
console.log(typeof base);
let bar = base + 1;
return bar;
}
var foo = '1';
plusOne(foo); //string, ’11'
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
var foo = '1';
plusOne(foo); //string, ’2’
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
var foo = [‘1’,1,-1,NaN, null];
plusOne(foo); //NaN
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
var foo = [‘1’,1,-1,NaN, null];
plusOne(foo[2]); //0
plusOne(foo[3]); //NaN
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
var foo = ['1',1,-1,NaN,null];
var plusFoo = [];
for(var i=0; i<foo.length; i++) {
plusFoo.push(plusOne(foo[i]));
};
console.log(plusFoo); //[2, 2, 0, NaN, 1]
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
function makePlusArray() {
// ,
}
var foo = ['1',1,-1,NaN,null];
makePlusArray(foo); //[2,2,0,NaN,1]
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
function makePlusArray(foo) {
var plusFoo = [];
for(var i=0; i<foo.length; i++) {
plusFoo.push(plusOne(foo[i]));
};
return plusFoo;
}
var foo = ['1',1,-1,NaN,null];
makePlusArray(foo); //[2,2,0,NaN,1]
function plusOne(base) {
base = (typeof base === 'number') ? base : +base;
let bar = base + 1;
return bar;
}
function makePlusArray(foo) {
var plusFoo = [];
debugger;
for(var i=0; i<foo.length; i++) {
plusFoo.push(plusOne(foo[i]));
};
return plusFoo;
}
var foo = ['1',1,-1,NaN,null];
makePlusArray(foo); //[2,2,0,NaN,1]
.
step into, step over, step out.
call stack
var foo = ['1',1,-1,NaN,null];
makePlusArray(foo); //[2,0]
//hints
- typeof
- isNaN()
- for continue
function plusOne(base) {
let bar = base + 1;
return bar;
}
function makePlusArray(foo) {
var plusFoo = [];
for(var i=0; i<foo.length; i++) {
if(typeof foo[i] !== 'number' || isNaN(foo[i])) continue;
plusFoo.push(plusOne(foo[i]));
};
return plusFoo;
}
var foo = ['1',1,-1,NaN,null];
makePlusArray(foo); //[2,0]
['1',1,-1,NaN,null].filter((v) => typeof v === "number" && !isNaN(v))
.map(v => v+1);
JavaScript .
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
var heading = document.createElement("h1");
var heading_text = document.createTextNode(“hello codesquad!”);
heading.appendChild(heading_text);
document.body.appendChild(heading);
HTML,CSS Next
HTML,CSS Next
HTML,CSS Next
Element.addEventListener()
const el = document.querySelector(‘section’);
el.addEventListener(‘click’, (evt) => {
evt.target.style.color = ‘#555’;
}
.
HTML,CSS Next
HTML,CSS Next

More Related Content

PDF
History of jQuery
PDF
Backbone.js — Introduction to client-side JavaScript MVC
PDF
JavaScript & HTML5 - Brave New World
PDF
React, Redux and es6/7
PDF
Functionality Focused Code Organization
PDF
JavaScript 1.5 to 2.0 (TomTom)
PPTX
Taming that client side mess with Backbone.js
PDF
Web Crawling with NodeJS
History of jQuery
Backbone.js — Introduction to client-side JavaScript MVC
JavaScript & HTML5 - Brave New World
React, Redux and es6/7
Functionality Focused Code Organization
JavaScript 1.5 to 2.0 (TomTom)
Taming that client side mess with Backbone.js
Web Crawling with NodeJS

What's hot (20)

PDF
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
PDF
HTML5: where flash isn't needed anymore
PDF
JavaScript Promise
PDF
A New Baseline for Front-End Devs
PDF
jQuery in 15 minutes
PDF
Mulberry: A Mobile App Development Toolkit
PDF
Building Large jQuery Applications
KEY
Paris js extensions
PDF
DOM Scripting Toolkit - jQuery
PPT
Praktik Pengembangan Konten E-Learning HTML5 Sederhana
PPTX
AngularJS Services
PDF
Write Less Do More
PDF
Delivering a Responsive UI
PPTX
Angular 1 + es6
PDF
Beyond the DOM: Sane Structure for JS Apps
PDF
HTML5 APIs - Where no man has gone before! - Altran
KEY
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
KEY
Sprout core and performance
PDF
JavaScript APIs - The Web is the Platform - MDN Hack Day, Santiago, Chile
PDF
Learning jQuery in 30 minutes
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
HTML5: where flash isn't needed anymore
JavaScript Promise
A New Baseline for Front-End Devs
jQuery in 15 minutes
Mulberry: A Mobile App Development Toolkit
Building Large jQuery Applications
Paris js extensions
DOM Scripting Toolkit - jQuery
Praktik Pengembangan Konten E-Learning HTML5 Sederhana
AngularJS Services
Write Less Do More
Delivering a Responsive UI
Angular 1 + es6
Beyond the DOM: Sane Structure for JS Apps
HTML5 APIs - Where no man has gone before! - Altran
Building Single Page Apps with Backbone.js, Coffeescript and Rails 3.1
Sprout core and performance
JavaScript APIs - The Web is the Platform - MDN Hack Day, Santiago, Chile
Learning jQuery in 30 minutes
Ad

Similar to HTML,CSS Next (20)

PDF
Powering code reuse with context and render props
PPTX
What’s new in ECMAScript 6.0
PDF
Java script objects 1
 
PDF
The hidden and new parts of JS
DOC
Jsphp 110312161301-phpapp02
PPTX
Front end fundamentals session 1: javascript core
PPTX
Introduction to TypeScript
PDF
JavaScript for PHP developers
KEY
Object-Oriented JavaScript
KEY
Object-Oriented Javascript
PDF
Code examples javascript ebook
KEY
【第一季第三期】Thinking in Javascript & OO in Javascript - 清羽
PDF
"Writing Maintainable JavaScript". Jon Bretman, Badoo
PDF
How to develop frontend application
PDF
Introduction to typescript
PDF
FP in JS-Land
PDF
TypeScript Introduction
PPTX
Type Driven Development with TypeScript
PDF
mobl presentation @ IHomer
PDF
Introduction to ECMAScript 2015
Powering code reuse with context and render props
What’s new in ECMAScript 6.0
Java script objects 1
 
The hidden and new parts of JS
Jsphp 110312161301-phpapp02
Front end fundamentals session 1: javascript core
Introduction to TypeScript
JavaScript for PHP developers
Object-Oriented JavaScript
Object-Oriented Javascript
Code examples javascript ebook
【第一季第三期】Thinking in Javascript & OO in Javascript - 清羽
"Writing Maintainable JavaScript". Jon Bretman, Badoo
How to develop frontend application
Introduction to typescript
FP in JS-Land
TypeScript Introduction
Type Driven Development with TypeScript
mobl presentation @ IHomer
Introduction to ECMAScript 2015
Ad

More from 지수 윤 (20)

PDF
코드스쿼드 마스터즈세미나 - UI개발자가돼보자
PDF
Clean Front-End Development
PDF
개발자를 알아보자.
PDF
재사용UI 컴포넌트설계
PDF
Front-End 개발의 괜찮은 선택 ES6 & React
PDF
WEB Front-End 개발과정 살펴보기
PDF
크로스브라우징
PDF
재사용가능한 서비스코드제작
PDF
WEBUI Advanced중간시험
PDF
비동기와 이벤트큐 수업자료
PDF
JavaScript OOP Pattern
PDF
JS특징(scope,this,closure)
PDF
JavaScript Debugging (수업자료)
PDF
JavaScript Debugging (동영상강의자료)
PDF
CSS Layout
PDF
더 나은 SW프로젝트를 위해
PDF
9주 DOM & Event Advanced
PDF
7주 JavaScript Part2
PDF
7주 JavaScript Part1
PDF
6주 javaScript 시작하며
코드스쿼드 마스터즈세미나 - UI개발자가돼보자
Clean Front-End Development
개발자를 알아보자.
재사용UI 컴포넌트설계
Front-End 개발의 괜찮은 선택 ES6 & React
WEB Front-End 개발과정 살펴보기
크로스브라우징
재사용가능한 서비스코드제작
WEBUI Advanced중간시험
비동기와 이벤트큐 수업자료
JavaScript OOP Pattern
JS특징(scope,this,closure)
JavaScript Debugging (수업자료)
JavaScript Debugging (동영상강의자료)
CSS Layout
더 나은 SW프로젝트를 위해
9주 DOM & Event Advanced
7주 JavaScript Part2
7주 JavaScript Part1
6주 javaScript 시작하며

Recently uploaded (20)

PPTX
ISO 45001 Occupational Health and Safety Management System
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
AI in Product Development-omnex systems
PPT
Introduction Database Management System for Course Database
PDF
Softaken Excel to vCard Converter Software.pdf
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
medical staffing services at VALiNTRY
PDF
System and Network Administration Chapter 2
PDF
System and Network Administraation Chapter 3
PPTX
ai tools demonstartion for schools and inter college
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
top salesforce developer skills in 2025.pdf
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
ISO 45001 Occupational Health and Safety Management System
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
How to Migrate SBCGlobal Email to Yahoo Easily
How Creative Agencies Leverage Project Management Software.pdf
AI in Product Development-omnex systems
Introduction Database Management System for Course Database
Softaken Excel to vCard Converter Software.pdf
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PTS Company Brochure 2025 (1).pdf.......
Which alternative to Crystal Reports is best for small or large businesses.pdf
Operating system designcfffgfgggggggvggggggggg
medical staffing services at VALiNTRY
System and Network Administration Chapter 2
System and Network Administraation Chapter 3
ai tools demonstartion for schools and inter college
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
top salesforce developer skills in 2025.pdf
VVF-Customer-Presentation2025-Ver1.9.pptx

HTML,CSS Next

  • 19. <div class="accordion__item"> <h3 class="accordion__title js-title">A random title</h3> <p class="accordion__copy js-copy">By not having the imagination tis</p> </div>
  • 20. .foo { @include prefix(transform, rotate(90deg), ('webkit', 'ms')); }
  • 21. .foo { @include prefix(transform, rotate(90deg), ('webkit', 'ms')); }
  • 47. “ 첨에 들어가면 이미지가 겁나 늦게 떠.. 리액튼가 그거때문에 그런거아냐?” - 사랑하는 우리 사장님,
  • 48. “ API 변경됐다네요, 이참에 promise쓴거 async 기반으로 좀 개선해보고요. 가끔 데이터 못가져올때가 있다는데, 실패한 경우 메시지 처리도 같이 고려해봐야할 거 같아요. 아참, 슬라이딩 애니메이션 좀 느리다는데, image 로딩과 겹친 렌더링 문 제 같아요.. 원인찾아서 DOM조작 좀 다시 해보죠.” “ 우리 사이트 리액트인가 그거에요? 왜이렇게 느려요?”
  • 78. var foo = 1;
  • 79. var foo = 1; var var = foo + 1; Uncaught SyntaxError: Unexpected token var
  • 80. var foo = 1; var bar = foo + 1;
  • 81. var foo = 1; var bar = foo + 1; plusOne() //2
  • 82. function plusOne() { var foo = 1; var bar = foo + 1; return bar; } plusOne() //2
  • 83. function plusOne(base) { var bar = base + 1; return bar; } var foo = 1; plusOne(foo) //2
  • 84. function plusOne(base) { const bar = base + 1; return bar; } var foo = 1; plusOne(foo) //2
  • 85. function plusOne(base) { const bar = base + 1; bar = bar + 0; return bar; } var foo = 1; plusOne(foo); VM1887:3 Uncaught TypeError: Assignment to constant variable.
  • 87. function plusOne(base) { const bar = base + 1; debugger; bar = bar + 0; return bar; } var foo = 1; plusOne(foo);
  • 89. function plusOne(base) { const bar = base + 1; return bar; } var foo = 1; plusOne(foo); //2
  • 90. function plusOne(base) { const bar = base + 1; return bar; } var foo = '1'; plusOne(foo); //11
  • 91. function plusOne(base) { console.log(typeof base); let bar = base + 1; return bar; } var foo = '1'; plusOne(foo); //string, ’11'
  • 92. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } var foo = '1'; plusOne(foo); //string, ’2’
  • 93. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } var foo = [‘1’,1,-1,NaN, null]; plusOne(foo); //NaN
  • 94. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } var foo = [‘1’,1,-1,NaN, null]; plusOne(foo[2]); //0 plusOne(foo[3]); //NaN
  • 95. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } var foo = ['1',1,-1,NaN,null]; var plusFoo = []; for(var i=0; i<foo.length; i++) { plusFoo.push(plusOne(foo[i])); }; console.log(plusFoo); //[2, 2, 0, NaN, 1]
  • 96. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } function makePlusArray() { // , } var foo = ['1',1,-1,NaN,null]; makePlusArray(foo); //[2,2,0,NaN,1]
  • 97. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } function makePlusArray(foo) { var plusFoo = []; for(var i=0; i<foo.length; i++) { plusFoo.push(plusOne(foo[i])); }; return plusFoo; } var foo = ['1',1,-1,NaN,null]; makePlusArray(foo); //[2,2,0,NaN,1]
  • 98. function plusOne(base) { base = (typeof base === 'number') ? base : +base; let bar = base + 1; return bar; } function makePlusArray(foo) { var plusFoo = []; debugger; for(var i=0; i<foo.length; i++) { plusFoo.push(plusOne(foo[i])); }; return plusFoo; } var foo = ['1',1,-1,NaN,null]; makePlusArray(foo); //[2,2,0,NaN,1]
  • 99. . step into, step over, step out. call stack
  • 100. var foo = ['1',1,-1,NaN,null]; makePlusArray(foo); //[2,0] //hints - typeof - isNaN() - for continue
  • 101. function plusOne(base) { let bar = base + 1; return bar; } function makePlusArray(foo) { var plusFoo = []; for(var i=0; i<foo.length; i++) { if(typeof foo[i] !== 'number' || isNaN(foo[i])) continue; plusFoo.push(plusOne(foo[i])); }; return plusFoo; } var foo = ['1',1,-1,NaN,null]; makePlusArray(foo); //[2,0]
  • 102. ['1',1,-1,NaN,null].filter((v) => typeof v === "number" && !isNaN(v)) .map(v => v+1); JavaScript .
  • 106. var heading = document.createElement("h1"); var heading_text = document.createTextNode(“hello codesquad!”); heading.appendChild(heading_text); document.body.appendChild(heading);
  • 111. const el = document.querySelector(‘section’); el.addEventListener(‘click’, (evt) => { evt.target.style.color = ‘#555’; }
  • 112. .