목록Web/vanilla js (5)
dev_eun
First-class Function 함수가 변수처럼 취급된다. 변수에 할당할 수 있다. 매개변수를 전달받을 수 있다. 리턴값을 리턴할 수 있다. anonymous function 이름이 없는 함수 const print = function() { console.log('print'); }; callback function 매개변수로 함수를 전달한다. 클라이언트에게 구현을 맡기는 것과 같음 function randomQuiz(answer, printYes, printNo) { if(answer === 'love you') { printYes(); } else { printNo(); } }; const printYes = function() { console.log('Yes!'); } const printN..
var block안에 변수를 선언해도 어느곳에서나 사용할 수 있게 된다. 이제는 사용하지 말 것! let을 사용하자! hoisting var 예약어를 이용하여 변수를 선언할 경우 발생한다. 어디에 선언했는지에 상관없이 항상 제일 위로 선언을 끌어올려준다. let mutable 변수를 선언할 때 사용한다. const immutable 데이터 타입을 선언할 때 사용한다. 장점 1. security 2. thread safety : 스레드가 변수에 동시에 접근해서 변경하는 것을 방지 3. reduce human mistakes Variable types 타입이 다이나믹하게 결정된다. number Infinity : 무한대 -Infinity : -무한대 NaN : not a number BigInt 123n s..
html에서 script를 포함할 때 1. 안에 있는 경우 브라우저가 html 파싱을 할 때 blocking 된 후 js파일을 로드한다. 단점 : 만약 파일이 클 경우 웹페이지가 보이지 않을 수 있다. 2. 맨 끝에 있는 경우 파싱이 모두 끝난 후 js 파일을 로드한다. 단점 : 웹사이트가 js에 의존적일 경우(서버 데이터 받아옴, UI 꾸미기 등) fetching하기까지 오래걸릴 수 있다. 3. async js 파일을 병렬로 로드하고 blocking이 되지 않고 파싱을 계속한다. 단점 - 파싱이 끝나기도 전에 js파일이 fetching이 되면 js에서 조작해야 할 DOM 요소가 정의되지 않을 수 있다. - js를 실행할 때 파싱이 blocking이 될 수 있다. - 스크립트가 정의된 순서되로 실행되는 ..
map 함수 배열에서 요소를 하나씩 돌며 새로운 요소의 새로운 배열을 리턴한다. 배열일 경우 완전히 새로운 배열을 생성하며, 요소가 객체일 경우엔 기존 객체와 공유한다. 세 개의 인자를 모두 사용하지 않고 element만 사용할 수 있다. array = [1, 2, 3] // element : 배열의 요소 // index : 배열의 인덱스 // array : 원본 배열 let newArray = array.map((element, index, array) => { return element + 1; }); newArray;// 2, 3, 4 filter 함수 배열에서 조건에 따라 필터링하여 true/false를 리턴한다. true인 원소들만 모아 새로운 배열을 생성한다. 해당되는 조건이 없을 경우 빈 배..
코테는 c++로만 이용해서 보다가 js 코테도 요즘 많이 생겨나고 있는 것 같아서 언제든 볼 수 있게 준비한다. 아주 많이 참고한 사이트 JavaScript로 만나는 세상 | JavaScript로 만나는 세상 처음 시작하는 사람들을 위한 JavaScript 교재 helloworldjavascript.net 수 연산은 동일 +, -, *, /, %, ++, --, +=, -= object, array, function 등 참조형 변수들은 const로 선언해주는 게 맞다! 변수 선언 const var_const;// 재할당 X, 하지만 참조형 변수 array, function, object에는 사용 let var_let;// 재할당 O var var_var;// 재할당 O, 호이스팅때문에 요즘은 잘 안쓴다고..