전체 글62 자바스크립트의 Array 일반적으로 배열은 어떻게 동작하는지 다른 언어를 통해 익숙히 알고 있다. 배열에서 필요한 만큼 메모리 공간을 확보한 다음 데이터를 저장한다. 특히, 연속적인 데이터 접근에 굉장히 용이하다. 그러나 JS의 배열은 뭔가 좀 특이하다. 같은 자료형이 아닌데도 배열이 잘 유지된다. 심지어 Object를 넣어도 잘 동작한다. 배열의 메모리 저장 방식 사실 JS는 배열을 다른언어에서 배열을 사용하여 메모리에 순차적으로 저장하는 방식이 아닌 Linked List의 방식( sparse distributed memory )과 동일하게 메모리에 저장한다. 동작하는 방식은 또 약간 다른가 보다.... 무튼, 성능 상 바로 접근해서 사용하는 배열을 능가할 수는 없다. 다만 요소의 삽입 및 삭제는 배열보다 빠르다. 웹사이트의 .. 2022. 11. 30. 변수의 유효범위(Scope)와 클로저, 가비지 컬렉션 변수의 유효범위(Scope)와 클로저, 가비지 컬렉션 JS : 함수지향 언어로 자유도가 높음. (높은 자유도가 단점이 되기도 함...ㅠ) 그때문에 JS의 함수는 동적 생성, 인자로 넘기기, 생성된 곳이 아닌 곳에서 호출이 가능 함수 내부에서 외부에 있는 변수에도 접근이 가능함 사용하다 보면 의문점이 생기는데 1. 함수 생성 이후 외부 변수가 바뀌면 어찌되는가?? 참조하고 있는 값이 바뀌는거니 같이 바뀜 2. 매개변수로 함수를 넘겨 먼곳에서 호출하면 어떻게 됨? 호출된 곳을 기준으로 외부변수에 접근? 아뇨, 생성된 곳을 기준으로 외부변수에 접근하는 scope 가 결정됨. 호출된곳과는 무관함. 이렇게 답을할 수 있겠다. 아래 내용을 읽기 이전에 대략적으로 필요한 단어들을 정리하고 넘어가겠다. 외부 변수 : .. 2022. 11. 30. 함수 정리 함수 호출 방식 내부 변수 ( 블록 스코프 ) 외부 변수 ( 함수 외부의 변수 접근 및 수정 가능 ) this가 바인딩 되는 객체는 동적으로 결정됨 ( 호출 방식에 따라 다름 ) 1. 함수 호출 함수를 호출하면 prototype 을 가지게 됨 (기본값) 글로벌 영역에 선언된 함수는 전역 객체의 값에 접근 가능 내부 함수도 this가 global, window 를 가리킴 기명함수 (함수 선언문) function doSomething() { // do Something... } 호이스팅 O 선언 이전에 호출 가능 arguments : O this : global / window 객체 this가 특정 객체를 가리키기 위한 방법 : this를 다른 변수에 담아 사용 함수 내부에서 자신 호출 가능 let sayH.. 2022. 11. 29. 나에게 필요한 치과 찾기 "치통의 발생" 최근 치아 사이에 음식물이 자주 끼던 부분에서 치통이 발생하였다. 씹을때마다 저릿저릿 발생하는 통증은 떨어질대로 떨어진 식욕을 땅바닥으로 떨어뜨렸다.이따금씩 발생하던 일이었기에 대수롭지않게 치실과 워터픽, 양치로 마무리하고 며칠 기다렸지만 예전과 달리 통증이 빨리 가시질 않았다. 연초에 치아검진을 했고 이제는 치과를 갈 차례가 되었나 싶었다. 양심치과니 뭐니 하는 말들이 많아서 네이버 지도에 리뷰가 좋은 곳을 찾아서 나의 치아상태를 알아보기 시작했다. 교정을 했고 치아 사이 간격이 넓어서 어디에 음식물이 끼었는지 나는 정확하게 파악할 수 있다. 관리를 충분히 잘 한다 생각했지만 이번에 들은 검진 결과는 나의 멘탈을 바사삭 무너뜨렸다. 말로만 듣던 인접면 충치, 꽤나 깊숙하게 진행되었다고 .. 2022. 11. 21. Vite, 프록시 적용하기 Vite, 번들링이 굉장히 빠른 장점이 있어서 요청받은 기능을 구현하는데 사용하고 있다. 상시로 서버를 돌릴만큼의 서비스는 아니기에 로컬 환경에서 처리하는것이 적당했다. 다만, 외부 API가 필요한 상황이라 API 호출 시 CORS 문제를 일으켰다. 특히, 네이버는 서버에서만 API를 처리함을 강제하고 있어 어쩔 수 없이 CORS를 잡고 넘어가야 했다. 간단하게 프록시로 우회하여 사용하려 했으나 예전처럼 1. package.json에 proxy 추가 2. htt-proxy-middleware 외부 라이브러리 적용 위 두가지를 붙여보았으나 정상적으로 동작하지 않았다. Vite 공식 홈페이지를 이리저리 찾아보니 Server option을 주는 방법이 조금 남달랐다. Vite 프로젝트를 생성하면 루트폴더에 v.. 2022. 10. 20. Error to start tasks in AWS ECS with docker hub image AWS에 ECS 생성하고 Docker hub에 업로드한 이미지를 불러와 컨테이너를 만드는 과정에서 오류가 발생했다. 이미지는 로컬 및 EC2에서 동작하는것 확인하였으므로 정상이었다. 하지만 ECS에서 이미지를 불러와 사용하려고 했으나 아무런 반응이 없었다. 정상적으로 작동이 되었다면 클러스터 탭에서 해당하는 클러스터 이름을 누르고 Task 탭을 누르면 작동중인 Task 들을 볼 수가 있었다. 하지만 나는 아무런 것도 표시가 되지 않았고 다시 시작하는 모든 Task들은 stopped 상태로 들어가있었다. 시작하자마자 Pending -> Stopped 상태로 전환이 되었으니... 오류를 직접적으로 보기가 어려웠다. stopped 된 Task들을 눌러보니 CannotPullContainerError: insp.. 2022. 10. 7. 이전 1 2 3 4 5 6 7 ··· 11 다음