-
Javascript ES5+, nodejsTIL(Today I Learned) 2021. 10. 24. 23:20
alert는 영어로 '알리다'라는 의미를 갖고 있다.
javascript에서 alert('')라는 기능을 통해 알림 메시지 창을 띄울 있다.
ex) alert('Hi!!');를 입력하면 Hi라는 메시지 창이 뜬다
자바스크립트를 공부할 때 자바스크립트 공식사이트인 developer.mozilla.org를 참고하는것이 좋다.
async vs defer
html태그 안에 script태그를 넣었을 때 브라우저에서 한줄 한줄 parsing해서 분석한 뒤 CSS와 병합해서 DOM으로 만든다.
async는 boolean 타입이어서 선언해줄시에 true로 적용되고, html이 실행되는 동안 자바스크립트 문서를 불러오는과정(fetching)이 병렬적으로 이뤄져서 전체적인 시간이 줄어들 수 있다. 하지만, javascript 문서가 html이 완료되기 전에 실행(execute js) 되면 html이 전제 조건으로 있어야하는 기능이 자바스크립트가 먼저 불러와지게 되면서 오류를 일으킬 수도 있다는 단점이 있다.
defer는 브라우저가 HTML을 읽어드리는 동안 defer를 만난 순간부터 fetching을 병렬적으로 수행하고 실행은 HTML 파일이 다 분석이되고 나서 이뤄지기 때문에 안정성에서 async보다 우위를 점한다
async는 문서의 크기에 따라 실행 순서가 정해지기 때문에 자바스크립트 문서가 순서에 의존적이라면 문제가 발생할 수 있다.
defer같은 경우 자바스크립트가 순서대로 실행되기 때문에 순서에 의존적인 자바스크립트에도 적합하다
바닐라 자바스크립트를 사용할 때는 'use strict'를 제일 상단에 기재하는것이 좋은데, 그 이유는 자바스크립트 특성상 매우 유연하기 때문에 이것이 간혹 문제점으로 작용할 수 있다는것이다.(초급 개발자가 비상식적인 코드를 작성했을 때 코드가 정상적이지 않음을 알려주는 역할을 한다. (javascript es5에서부터 추가된 기능이다.))
예를 들어 선언되지 않은 a라는 변수에 값을 넣었을 때 use strict를 선언해주지 않으면 아무런 에러가 발생하지 않는데,
use strict를 사용하면 에러가 발생한다.
자바같은 경우는 유연성이 떨어지더라도 이러한 오류를 칼같이 잡아내서 코딩 과정은 어렵더라도 안정성이 자바스크립트에 비해 상대적으로 높을 수 있는 이유중에 하나라고 알고있었는데, 자바스크립트도 서버단을 자바처럼 더 안정성있게 사용될 수 있도록 발전하는것이 자바스크립트가 앞으로 전망이 좋은 언어라고 생각되는 이유중에 하나다.
유튜브 드림코딩 by 엘리님의 javascript es5+ 강의를 보고 배운 내용을 기재하였습니다.
'TIL(Today I Learned)' 카테고리의 다른 글
Javascript ES5+ (0) 2021.10.26 클라우드 컴퓨팅 (0) 2021.10.25 정처기가 끝나고.. 또 다른 시험 중.. (0) 2021.10.21 Node.js 2021/10/9 (0) 2021.10.10 정보처리기사 실기 준비.. 그리고 react (0) 2021.09.28