배워서 남주는 개발자 :)
반응형

js 9

[ JS 딥다이브 ] 10주차 : 스코프

1. 스코프란? 스코프는 식별자가 유효한 범위를 말한다. 변수는 자신이 선언된 위치에 따라서 자신이 유효한 범위, 즉 다른 코드가 변수 자신을 참조할 수 있는 범위가 결정된다. let a = 'jason' function name() { let a = 'tom' console.log(a); // 1️⃣ } name() console.log(a); // 2️⃣ 위에서 코드의 가장 바깥 부분과 name 함수 내부에서 동일한 변수 a를 선언하고 1️⃣과 2️⃣에서 a 변수를 참조한다. 이때 JS엔진은 이름이 같은 두개의 변수 중에서 어떤 변수를 참조할지 결정한다. 이를 식별자 결정이라고 한다. JS엔진은 스코프를 통해 어떤 변수를 참조해야 할지 결정한다. 따라서 스코프란 JS엔진이 식별자를 검색할 때 사용하는..

JS 2023.04.22

[ JS 딥다이브 ] 9주차 : 함수

1. 함수란? 함수는 JS에서 가장 중요한 핵심개념이다. 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의한 것이다. // f(x,y) = x + y function sum(a, b){ return a + b } f(3, 9) = 12 sum(3,9) // 12 * 매개변수 - 함수 내부로 입력을 전달받는 변수 * 입력 - 인수 / 출력 - 반환값 함수는 정의를 통해 생성이 가능하다. 또한 인수를 매개변수로 통해 함수에 전달하면서 함수의 실행을 명시적으로 지시하는 함수의 호출을 해야 코드 블록에 담긴 문들이 실행된다. 2. 사용이유 함수는 필요할 때 여러번 호출할 수 있다. ➡️ 코드의 재사용 측면에서 매우 유용하다. 함수의 이름은 자신의 역할을 잘 설명하도록 작성되어야 한다...

JS 2023.03.25

[ JS 딥다이브 ] 6주차 : 타입 변환과 단축 평가

타입 변환 JS의 모든 값은 타입을 가지고 있음. 값의 타입은 개발자의 의도에 따라 다른 타입으로 변환 가능 명시적 타입 변환 / 타입 캐스팅 : 의도적인 타입 변환 암묵적 타입 변환 / 타입 강제 변환 : 의도와 상관없이 표현식을 평가하는 중에 JS엔진에 의해 암묵적으로 변환 *원시값은 변경이 불가능한 값이므로 변경할 수 없음 타입 변환이란 기존 원시값을 사용해서 다른 타입의 새로운 원시값 을 생성하는 과정. 암묵적 타입 변환 2-1. 문자열 타입으로 변환 템플릿 리터럴의 표현식 삽입 : 평가 결과를 문자열 타입으로 암묵적 변환 0 + `` // '0' 2-2. 숫자 타입으로 변환 산술연산자 / 비교연산자 삽입 : 피연산자 중에서 숫자 타입이 아닌 값을 숫자 타입으로 암묵적 타입 변환 수행 2-3. 불..

JS 2023.03.05

[ JS 딥다이브 ] 5주차 : 제어문

제어문 → 조건에 따라 코드블록을 실행 (조건문)하거나 반복 실행 (반복문)할 때 사용 → 일반적인 코드는 위에서 아래로 순차적으로 실행 ⇒ 이때, 제어문을 사용하면 코드의 실행 흐름을 인위적으로 제어 가능 🛑 하지만 코드의 실행 순서가 변경된다는 것은 직관적인 코드의 흐름을 혼란스럽게 할 수 있음 코드의 흐름을 이해하기 어렵게 만들어 가독성을 해치는 단점 이 있음 ⇒ 가독성이 좋지 않은 코드는 오류를 발생 시키는 원인이 됨 👉🏻 forEach, map, filter, reduce같은 고차함수 를 사용한 함수형 프로그래밍 기법에서는 제어문의 사용을 억제하여 복잡성을 해결하려고 노력 함 8.1 블록문 0개 이상의 문을 중괄호로 묶은 것 JS는 블록문을 하나의 실행단위로 취급함 8.2 조건문 주어진 조건식의..

JS 2023.03.05

[ JS 딥다이브 ] 2주차 : 표현식과 문

5.1 값 값은 식(표현식)이 평가되어 생성된 결과를 의미함. (평가 : 식을 해석해서 값을 생성하거나 참조하는 것을 의미. ) 모든 값은 데이터 타입을 가지며, 메모리에 2진수, 즉 비트의 나열로 저장됨. 메모리에 저장된 값은 데이터 타입에 따라 다르게 해석될 수 있음. 값을 생성하는 기본적인 방법 : 리터럴 을 사용하는 것. 5.2 리터럴 리터럴 : 사람이 이해할 수 있는 문자/ 약속된 기호를 사용해 값을 생성하는 표기법 JS 엔진은 코드가 실행되는 시점인 런타임에 리터럴을 평가해 값을 생성함. 5.3 표현식 표현식은 값으로 평가될 수 있는 문. 즉 표현식이 평가되면 새로운 값을 생성하거나 기존값을 참조 위의 리터럴도 값으로 평가되기 때문에 표현식임. 5.4 문 문은 프로그램을 구성한느 기본 단위이자..

JS 2023.03.05

[ javascript ] encodeURI(), encodeURIComponent() 차이

1. encodeURI() : decodeURI() escape()와 같이 변환을 하지만, 인터넷 주소에서 쓰는 특수 문자 : ; / = ? & 는 변환을 하지 않습니다. 2. encodeURIComponent() : decodeURIComponent() 인터넷 주소에서 쓰는 특수 문자 : ; / = ? & 까지 변환을 합니다. 인터넷 주소를 하나의 변수에 넣을때 쓸 수 있습니다. ★ 덧붙임 : encodeURIComponent() 는 UTF-8 로 인코딩 하는 것과 같음 encodeURI는 알파벳, 0~9의 숫자, ; , / ? : @ & = + $ # - _ . ! ~ * ' ( ) 를 제외한 문자를 인코딩(이스케이프 처리) encodeURIComponent는 알파벳,0~9의 숫자 - _ . ! ~ ..

Web 2022.08.02

프로토타입 이란? (Prototype) 자바스크립트 핵심 개념

(본 포스팅은 개인 공부를 목적으로 작성된 포스팅으로 부족한 점이 있다면 댓글로 알려주시면 보완하겠습니다!) 1. 프로토타입이란? 2. 생성자란? 3. 프로토타입 체인이란? 4. 프로토타입 사용시 주의사항 1. 프로토타입이란? 프로토타입이라는 것이 무엇일까? 프로토타입은 자바스트립트 안에 존재하는 거물급 개념중에 하나이고, 자바스크립트의 객체지향 언어를 지탱하고 있는 매우 핵심적인 개념 중에 하나이고, 자바스크립트를 일반적인 객체지향 언어와 구분하는 중요한 개념이다. 프로토타입은 '원형'이라는 의미로 말그대로 객체의 원형이라고 이해할 수 있다. 함수는 객체이다. 그러므로 생성자로 사용될 함수도 객체이다. 객체는 프로퍼티를 가질 수 있는데 prototype이라는 프로퍼티는 그 용도가 약속되어 있는 특수한 ..

Web 2022.05.01

22.04.08 [항해99 33일차] 클로저 / 스웨거 사용법

🛑 오늘의 한줄평 👉🏻 미니프로젝트 시작 🛑 오늘 한 일 07:00 - 08:00 준비 08:00 - 09:00 노드 강의 09:00 - 09:30 미니프로젝트 발제 09:30 - 10:00 휴식 10:00 - 10:30 협업 세션 10:30 - 11:00 cs 스터디 11:00 - 12:00 와이어프레임 회의 12:00 - 13:30 점심 13:30 - 18:00 와이어프레임 회의 18:00 - 19:00 저녁 19:00 - 22:40 api 설계 🛑 오늘 할 일 미니프로젝트 와이어프레임 미니프로젝트 api 설계 DB schema 작성 강의 듣기 - node 기능 1시간 개인 프로젝트 작업 - 회원가입 로그인 기능 붙이기! 실행 context (+호출스택)- this / scope 이벤트 루프 프로토타..

항해99 2022.04.09

22.03.12 [항해99 6일차] 자바스크립트 배열/ 문자열 함수 정리

06:00 - 07:00 기술블로그 2개 포스팅 07:00 - 08:30 알고리즘 11-14번 08:30 - 09:00 휴식 09:00 - 10:00 미니프로젝트 수정 및 병합 10:00 - 12:00 알고리즘 15-16번 12:00 - 13:30 점심 13:30 - 14:30 array 관련 함수 정리 14:30 - 15:00 알고리즘 리뷰 15:00 - 16:30 휴식 16:30 - 18:30 알고리즘 17-20번 18:30 - 20:00 저녁 20:00 - 20:45 알고리즘 리뷰 20:45 - 21:30 개인정비 [항해99 6일차] 🛑오류수정 pycharm module 인식 에러 - 설치해도 없다고 나오는 경우 → 해결법 : 프로젝트의 인터프리터 오류이거나 인터프리터의 경로가 잘못된 경우! htt..

항해99 2022.03.12
728x90