본문 바로가기

개발/자바스크립트 35

[자바스크립트] 자바스크립트의 동작에 대하여 #1(feat.엔진, 런타임, 콜스택) 저번에 인터뷰의 질문 '자바스크립트는 어떻게 동작하는가?'에 대한 답을 해보았다. [인터뷰] 자바스크립트의 내부 동작 원리에 대해서 설명하라 자바스크립트... 처음 입사하고 맞이한 이 친구,,, 일 년을 넘게 보고 있자니 이젠 익숙을 넘어 친근하기까지 한 언어가 되어버렸다. 하지만 이제껏 내부 구조를 살펴볼 생각보다는 var 부터 선언 all-dev-kang.tistory.com 그래서 이번에는 좀 더 깊숙이 들어가 보고자 한다. 일단 이 글은 blog.sessionstack.com/how-does-javascript-actually-work-part-1-b0bacc073cf 를 토대로 작성한 것이다. 자바스크립트가 단일 쓰레드(single-threaded)이고 콜백 큐(callback queue)를 이.. 2021. 3. 26.
[자바스크립트] 배열의 마지막 요소를 가져오는 방법에 대하여 이번 포스트에서는 배열의 마지막 요소를 가져오는 방법에 대해 알아보도록 하겠다. 파이썬의 경우 배열의 마지막 요소는 array[-1]로 가져올 수 있다. 과연 자바스크립트에서도 동작할까? let array = [0,1,2,3,4]; console.log(array[-1]); // undefined 안된다. 이로써 가장 간단한 방법이라고 생각했던 것이 안된다. 그러면 길이를 계산해서 마지막 요소를 가져오는 방법이 있다. let array = [0,1,2,3,4]; console.log(array[array.length -1]); // 4 아주 깔끔하다. 추가로 다른 방법이 있나 더 찾아보도록 하자. 아래는 stackoverflow에 올라온 질문에 대한 답이다. Selecting last element in.. 2021. 3. 26.
[자바스크립트] Array.sort()에 대하여 (feat, 브라우저) 이번 포스트에서는 자바스크립트의 sort에 대해서 알아보고 브라우저별로 속도를 비교해보겠다. 일단 자바스크립트의 sort는 말 그대로 정렬해주는 것이다. 간단한 예를 봐보자 const months = ['March', 'Jan', 'Feb', 'Dec']; months.sort(); console.log(months); // expected output: Array ["Dec", "Feb", "Jan", "March"] const array1 = [1, 30, 4, 21, 100000]; array1.sort(); console.log(array1); // expected output: Array [1, 100000, 21, 30, 4] 코드로 보다시피 대상이 되는 배열을 정렬하는 것이다. 근데 정렬된 .. 2021. 3. 23.
[자바스크립트] number 타입에 대하여 들어가며 개발 관련 영상을 보다가 이런 질문이 나왔다. "자바스크립트에서 숫자 타입이 하나뿐인 이유를 설명하시오" 음.. 일단 내가 하는 자바스크립트는 숫자 타입은 number, bigint로 2개인데 잘못됐나 싶었다. 그래서 질문자의 의도를 생각해보니 숫자 타입, 정확히는 number 타입이 하나뿐인 이유를 설명하시오 라고 하니 질문이 이해가 되었고 그에 대한 답을 스스로 해보고자 이번 포스트를 작성하게 되었다. JS의 7개 표준 자료형 일단 최신 ECMAScript 표준에서는 기본형 값에 대해 7개의 타입을 정의하고 있다. 기본 자료형(Primitive) 7가지 : string, number, boolean, undefined,null, symbol, Bigint 여기서 string, number, .. 2021. 3. 17.