Front-End/JavaScript35 커링 curring 의문점1. 왜 매개변수를 쪼개서 사용해야 하지? 2. 사용되는 형태를 찾아보기 3. 헷갈리는 점은 매개변수에 콜백 함수가 들어올 때 인 것 같다. 4. 모던 javascript 예제는 어렵게 느껴진다.. 쉬운 글부터 찾아서 읽어봐야지 5. 리턴 되고나면.. 그 이후의 상황.. 이전 매개변수를 어떻게 사용할수가 있지? => 그러면 무조건 const 함수2 = 함수1(x) 형태의 표현식을 사용해서 할당해야 하는건가?.. 그렇다고 하더라도.. 매개변수가 유지되는 건가? 일단 매개변수 n개 중 m개만 미리 받아둠 나중에 n-m개를 받아서 중간에 리턴문이 들어갈수가 있나? 아니면 중간 클로저 어딘가에 지역변수가 사용되거나? const FuncA = (x) => (y) => { return x + y } const.. 2023. 3. 17. if문과 삼항 연산자 구분해서 사용하기 if문의 경우 조건을 분기할 때, 각기 다르게 동작하는 코드들을 분기할 때 사용하고 삼항 연산자의 경우 값을 대입할 때 주로 사용해보기 2023. 3. 14. 선언적 코드와 절차적 코드, 추상화와 구체 "선언적 코드"를 활용할 것 그렇다면 구체와 추상화는 또 비슷한 개념이 아닐까? 라고 생각되어서 정리해보려고 한다. 늘 함수를 만들면, 코드를 작성하면 '유지보수'하기 쉬운 코드를 위해 고민해야 하는데, 내 코드는 늘 어쩐지 복잡하고 기본적이어서 무언가를 수정하려면 어려운 걸까 혹은 이렇게 결과를 똑같이 내더라도 과연 이렇게 작성하는게 맞는건가? 혹은 다른 분의 코드를 읽었을 때는 가독성이 좋아서 코드를 수정하기도 훨씬 쉬웠다. 그렇다면 내 코드와 차이점은 뭘까? 하는 고민을 하다가 강의를 통해 추상과 구체, 선언적 코드와 절차적 코드를 듣고 내 코드의 문제점을 다시 생각해보게 됐다. 일단 4개의 의미를 각각 분리해서 생각해보기로 했다. 어떻게(HOW)에 관한건 구체 무엇을(WHAT)에 관한건 추상 1을.. 2023. 3. 14. 명시적 표현, 암묵적 표현 코드 가독성 측면에서, 한번 더 생각하게 되는 not 연산자 사용을 지양할 것. 직관적으로 표현할 수 있다면 좋다. 2023. 3. 14. Regex 헷갈리는 부분들 정리 특히나 헷갈린 점. 대괄호, 중괄호, 소괄호의 의미. 백슬래시를 왜 쓴걸까? 이메일의 경우 @또는 .이 들어가는데, 이것은 어떻게 표현하지? 딱 그 문자만 들어가는 경우? 종료할때는? 1. 괄호: [], () 그리고 {} (1) 대괄호: 그중에 하나만. [a-z]: a부터 z까지의 알파벳중 하나. [abc] 는 [a-c]와 같다. (내가 착각한 것: 하나가 아니라 다중 가능이라고 생각함) (2) 소괄호: 그룹 (3) 중괄호: 반복 횟수. 예: a{2}: a가 2번 반복 (내가 착각한 것: ab{2} ab 두자리로 끝난다고 생각함) 2. 특수문자 ^, *, +, ?, $, . (1) ^: 2가지 경우가 있음. 대괄호를 같이 쓰면 의미가 달라짐 첫번째: ^a : a로 시작됨. ^[a-z.. 2023. 3. 6. axios 공식문서 따라서 (일부) 작성하면서 이해하기! axios-docs 지금까지는 fetch를 사용했지만, 다른 팀원들 전부 axios를 사용했기 때문에 axios를 공부하려고 한다. 흥미로운 점은, (1) 인스턴스를 만들고 (2) 인터셉터를 활용 (3) response에 대한 모듈화(인 것 같았다) fetch를 썼던 이유는 추가적인 패키지를 설치할 필요가 없었기 때문이었고 기본적인 GET, POST, DELETE, UPDATE하는데 문제는 없었다.(...) 나는 fetch(즉, API 통신 부분)를 특별하게 모듈화 하지 않았지만(못했지만..) 일반적으로는 모듈화를 통해 중복코드를 줄이면서, 코드를 분리해 뷰는 뷰만, API는 API 만 집중하도록 만드는 패턴이 자연스러운 것 같다. (MVC로 가는 길) (프로그래머스 과제관 해설에서도 fetch 사용, .. 2023. 2. 27. 코어 자바스크립트 2023/03/05 02 실행 컨텍스트 1. 실행 컨텍스트 실행 컨텍스트: 실행할 코드에 제공할 환경 정보들을 모아놓은 객체 => 콜스택에 쌓았다가, 가장 위에 쌓여있는 컨텍스트와 관련있는 코드들을 실행 -> 실행 컨텍스트를 생성하고 콜스택에 담는다. 그 후 실행 컨텍스트와 관련된 코드들을 순차 실행(즉, 실행 컨텍스트가 콜 스택의 맨 위에 쌓이는 순간이 곧 현재 실행할 코드에 관여하게 되는 시점) 2. VariableEnvironment 3. LexicalEnvironment 2-3-1 environmentRecord와 호이스팅 - 호이스팅: 식별자들을 최상단으로 끌어올림(그 뒤 실제 코드를 실행). environmentRecord의 수집 과정을 추상화한 개념 - 함수 선언문: 전체 호이스팅 - 함수 .. 2023. 2. 9. callback, promise callback, promise Promise를 사용한 함수의 경우, const promiseFunc = async () => { const data = await fetch() .... const responseData = await response.json(); return responseData } const exampleFunc1 = () => { const responseData = promiseFunc() //이 경우, Promise가 반환된다. } const exampleFunc2 = async () => { const responseData = await promiseFunc() //이 경우, responseData가 반환된다. } https://velog.io/@vraimentres/pr.. 2023. 1. 29. 이전 1 2 3 4 다음