- window 객체
- BOM & DOM
- 고차함수
- 비동기
- 함수 메소드
- 재귀
window 객체
브라우저 요소들과 자바스크립트 엔진, 글고 모든 변수를 담고 있는 객체
HTML 문서와 자바스크립트 구조도 다 트리구조로 돼있다.
DOM이 자바스크립트를 의미하는 것은 아니다.
window 객체는 모든 브라우저 전체를 담당하고 document 객체는 웹사이트만 담당한다.
document 객체는 (DOM)이라고 불리고, 나머지 전역객체들은 (BOM)이라고 불린다.
window 객체 내부에 screen, location, history, document 같은 객체가 존재
parseInt, isNaN 같은 메소드가 존재한다
window는 모든 객체의 조상이다. (전역객체)
String, Number, Boolean, Number, Function 등과 같은 자료형도 Window 객체 아래 존재한다.
window.close()
window.open()
opener객체
open() 한 기존 창에 대한 접근.
window.encodeURI()
window.decodeURI()
window.setTimeout()
window.setInterval()
window.getComputedStyled(태그)
BOM
navigator 객체
screen 객체
location 객체
history 객체
DOM
Document Object Model
html에 접근하여 Object처럼 html을 조작 할 수 있는 모델
html의 아주 작은 부분까지 접근할 수 있도록 웹 개발자들이 모여 분석하여 준비된 구조 (Structure)
자바스크립트는 이 구조를 잘 활용해 html로 구성된 웹 페이지를 작동하게 만들 수 있다.
자바스크립트는 오랜기간 웹 브라우저를 제어하기 위해 사용되어왔다.
dom 구조 조회하기 위해선 console.dir
이 유용하다. *DOM을 객체의 모습으로 보여준다.
자식 엘리먼트 - 부모 엘리먼트
DOM CRUD
create
append
prepaend
read
update
textContent
classList.add
setAttribue
Element.setAttribute(name, value);
ex)elDiv.setAttribute('id','root2')
;
var b = document.querySelector("button");
b.setAttribute("name", "helloButton");
b.setAttribute("disabled", "");
delete
innerHTML은 보안상의 이유로 지양한다.
NodeList
동적 출력
twittler 함수 복습
template 태그
let tweetTemplate = document.querySelector('#tweetTemplate');
let tweet = document.importNode(tweetTemplate.content, true);
tweet.querySelector('.name').textContent = item.user;
NodeList에 대한 forEach문
event 객체
이벤트 객체는 사용자 입력 등의 트리거에 의해 발생한 이벤트 정보가 담기는 객체이다
e.target
onsubmit
onchange
onkeyup
onmouseover
onclick
event.preventDefault
버튼이 추가 될때마다 새로운 함수를 만드는 것은 비효율 적이다. 이를 동일한 함수를 할당하는 방식으로 해주고 여기에 버튼이 일정 이상 추가될 땐 for 문과 같은 반복문을 이용할 수 있다
자바스크립트 파일 해석 시기
element는 node에 속해있다.
text는 node이나 element는 아니다
vanila javascript dom manipulation cheat sheet
https://gist.github.com/thegitfather/9c9f1a927cd57df14a59c268f118ce86
document.importNode
var node = document.importNode(externalNode, deep);
deep
노드를 가져올때 노드의 자식 요소들을 포함하여 가져올지 여부
higher order function
일급객체의 정의
고차 함수
내장 고차함수
추상화
커링과 클로저
선언형 프로그래밍 과 절차형 프로그래밍
@@ 오늘은 코드스테이츠 3,4 주차에 걸쳐 배운 내용에 대해서 복습하는 시간을 가졌다.
DOM 부터 헷갈리는 부분이 많고, 수강 이전 독학했던 이전 챕터들에 비해 버거운 느낌이 들어서 차근차근 urclass 및 제로초 블로그 글들을 리뷰하며 개념을 다시 익히는 시간을 가졌다.
twittler 과제도 리뷰하는 시간을 가졌는데, underbar, recursion에 대해서는 복습하는 시간을 좀 더 가져야 할 것 같다.
내일은 hiring assessments 가 기다리고 있다. immersive 코스를 밟을 준비가 돼 있는지 진단 받는 절차로, 이 과정을 통과 못하게 되면 기수 이동 및 하차가 진행된다.
배운 개념들을 최대한 활용해서 내일 만전을 다 하고 차분하게 임해야 겠다. 난이도가 가늠이 안돼서 좀 두렵지만 스스로도 진단해 볼 좋은 기회이기에 부담갖지 말고 임하되 부족한 부분에 대해서는 솔로 위크를 활용해서 최대한 채워 나가야겠다.