html 에서 javascript 코드를 head에 넣지 않고, body 맨 끝에 넣는 이유는 무엇인가요?


안녕하세요. 초보 개발자 gerald 입니다. AsQ 사이트를 구경하다가 궁금한 점이 생겨서 질문 남깁니다.

AsQ 사이트를 소스보기 해서 보면 javascript 를 불러오는 부분이 head에 있지 않고,

<html>
<head>
  <script type="text/javascript" src="~~~"></script>
</head>

아래처럼 body tag를 닫기 전에 적혀있습니다.

<html>
<head>
 ...
</head>
<body>
  ...
  <script type="text/javascript" src="~~~"></script>
</body>
</html>

이렇게 두면 어떤 점이 좋아지게 되는지 궁금합니다.


조회수 1947


4 답변


좋아요
14
싫어요
채택취소하기

웹브라우저가 HTML 문서를 해석(Parsing) 할 때 <script> 태그를 만나면 그 안에 있는 JavaScript 의 처리가 끝날 때 까지 다른 HTML의 해석을 멈추기 때문에 사용자 입장에서 HTML 페이지가 화면에 다 그려지기까지 더 오래걸리게 됩니다. 그래서 우선 CSS, HTML 해석이 먼저 완료되고 나서 JavaScript 가 수행하는 것이 더 빠르게 느껴지기 때문에 HTML 문서의 마지막(= </body> 직전)에 두는 것을 권합니다.

참고링크

  • 2016년 02월 01일에 작성됨


페이지 로딩을 조금 더 빠르게 하기 위해서 입니다. javascript를 안에 선언하게 되면 인터넷 환경이 매우 좋거나, 페이지가 단순할 때는 차이가 거의 없지만, 인터넷환경이 좋지 않을 때는 에 선언해 놓은 javascript때문에 페이지가 열리는 속도가 느려지는 현상이 생길 수 있습니다.

따라서 javascript를 맨 끝에 넣으면 일단 페이지 먼저 열리고, 그 후에 javascript가 할일을 하게 되기때문에 퍼포먼스가 더 좋은 경험을 주게 됩니다.

  • 2016년 02월 01일에 작성됨
    Css / visual design

  • 디자이너 같으신데... 자바스크립트 댓글도 다시나요?    Taeyeon Jeon   2016.2.3 11:17     
  • 짱 멋진 디자이너시군요!    Kim Seong Su   2016.2.12 13:02     

퍼포먼스를 위해 스크립트는 가능하면 가장 뒤에 넣으라더라구요. 스크립트보다는 화면에 보여줄것들을 먼저 로딩한 다음에 제일 마지막에 스크립트를 로딩하는게 좋다고 합니다.

  • 2016년 02월 01일에 작성됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 모바일 게임도 조금 만들어 봤습니다.


기능적 차이는 없으나 순서적 차이는 있습니다.

html 이 자바스크립트보다 빨리 로딩되어야 할 경우가 있습니다.

그럴경우는 html 구문 밑에 쓰기도 합니다.

하지만 상단에 쓴다고해서 html 이 로딩된 후 안불려지는것은 아닙니다.

기본적으로는 로딩순서를 뭐가 먼저할것이냐 의 차이 말고는 없습니다.

  • 2016년 02월 01일에 작성됨

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close