[2장] HTML 속의 자바스크립트

자바스크립트는 나오자마자 HTML에 포함되었고, HTML 방해안하려는 방식으로 표준화 되면서 HTML명세에서 공식적으로 문서화되었습니다.

2.1 script 요소

5가지 옵션을 지정할 수 있음. (== 필수아님, 생략가능)
- async : 뭔말이지!? 이해 못하고 있음...OTL
- charset : 대부분 브라우저들이 무시하는 속성.
- defer : 콘텐츠를 파싱하고 표시할때까지 스크립트 실행을 미루는 옵션. 스크립트를 외부에서 불러올때만 유효.
- language : 폐기.
- src : 외부 파일의 위치
- type : language 대체하려고 만들었지만, 생략해도 안전. 기본값이 text/javascript 로 되어있다.

script 요소 사용방법
1) 인라인 - 직접 구현하는 방법.
[javascript]<script>
function hello(){}
</script>
[/javascript]
2) 호출 - 외부에서 파일 불러오기
[javascript]<script src="hello.js"></script>
<script src="hello.js"/> //익스플로러에선 닫는 태그 생략을 허용하지 않음
[/javascript]

2.1.1 태그위치

head 안에 쓰면 - 자바스크립트부터 파싱해서 느림
body 끝부분에 쓰면 - 페이지 콘텐츠부터 보여주므로 빨라보임

2.1.3 비동기 스크립트

async 속성. 마크업 순서대로 실행하는게 아니니까 DOM을 조작하는 스크립트에서는 안쓰는게 좋음

2.1.4 XHTML에서 바뀐 점

1) HTML보다 엄격하므로 < 를 엔티티 & l t ;로 바꾸던가.
2) CDATA섹션으로 감싼다.
3) XHTML 비호환에선 CDATA 섹션을 지원하지 않으니까 //주석기호로 다시 감싼다.
잔기술이긴 하지만 어쨋든 최신브라우저에서 모두 잘돌아간다.

2.1.5 구식문법

궁금하면 27p

2.2 인라인 코드와 외부 파일

외부파일로 만드는 것이 좋은 이유3
- 관리하기 좋음
- 캐싱
- 미래에도 안전하다

2.3 문서 모드

뭔말인지 모르겠음. 시간나면 찾아보자.

2.4 noscript 요소

브라우저가 자바스크립트를 지우너하지 않을 때 대체 콘텐츠를 제공하기 위해 만들어짐. 또는 스크립트 지원이 꺼져있을 때.
(덧. 아이폰 설정에는 '자바스크립트 끄기' 이런 설정이 있음)

2.5 요약

앞에서 다 요약한 듯. -_-b

적게 일하고 많이 버는 법을 늘 고민합니다. 일이 되게 하는 것에 간혹 목숨을 겁니다. 지금은 우아한형제들과 함께 일하고 있어요.