분류 전체보기
-
[Javascript] 호이스팅 Hoisting and 변수키워드 var, let, const (feat. 둘리)To infinity/Javascript 이론 2021. 6. 13. 12:30
20201.06.13 Ver1 1. 호이스팅 Javascript에는 다른 언어와 다른 특이한 기능이 있는데 바로 호이스팅이라는 것이다. 호이스팅은 선언문 전에 실행 컨텍스트 환경이 세팅되고 초기화가 진행되는 현상이다. 그래서 만약에 아래코드를 실행하면 아래와 같은 결과가 나온다. let hoist = 1; { console.log(hoist); // access불가 let hoist = 2; } 결과: 만약 호이스팅이 일어나지 않으면 지역스코프의 hoist 값인 1을 참조해서 1의 결과를 내야 하지만 해당 결과는 access할 수 없다고 뜬다. 즉, 호이스팅이 일어나서 해당 함수코드 내에 실행콘텍스트가 생긴 것이다. 즉, 자바스크립트에서 모든변수는 호이스팅이 발생한다. 2. 변수키워드 var, let, ..
-
[Javascript] 프로퍼티 어트리뷰트 (프로퍼티 상세속성 바꾸기)To infinity/Javascript 이론 2021. 6. 13. 12:14
2021.06.13 Ver1 자바스크립트: 객체object 기반의 프로그래밍 언어 (함수와 객체는 분리할 수 없다!) 원시타입: 단 하나의 값 객체타입: 다양한 타입의 값 객체 = 0개 이상의 프로퍼티로 구성된 집합 프로퍼티 = key + value 프로퍼티: 객체의 상태를 나타내는 값 (data) // 음, 객체의 값이라고 생각하면 될 듯 메서드: 프로퍼티를 참조하고 조작할 수 있는 동작 (behavior) // 프로퍼티 값이 함수일 경우 일반함수와 구분을 위해 메서드 method라고 부름, 객체 값 중 함수 1. 내부슬롯과 내부메서드 - 자바스크립트 엔진의 내부로직으로 직접 접근 및 호출이 불가능함. - 하지만 일부에 한해 간접적으로 접근할 수 있음 Ex. [[Prototype]] 내부슬롯에는 __p..
-
[Be native] 영어회화 100일의 기적 (Day 1 ~ 5)and beyond/Be Native 2021. 6. 12. 18:19
2021.06.08 ~ 2021.06.12 [Feedback] 1. the weather reporter 발음 시 r r 발음이 중첩되서 발음하기 어려워서 weather 를 weathe 로 발음하니 한결 편해졌다. 2. I'll give you a ride home 인데 무의식적으로 I'll give you ride a home 이라 하는 것 같다. 2. 이상하게 Day4가 입에 잘 안붙는다. 다른 Day보다 좀 더 신경써야 할 듯 3. 마치 실제 대화하는 것 처럼하려 하는데 아직까진 뭔가 어색하다. [Script] https://youtu.be/PhS8gYzdWQg
-
[Be native] I'm gonna speak in English!and beyond/Be Native 2021. 6. 12. 18:13
난 미국에서 개발자로 일할거다. 한번쯤은 디즈니에서 꼭 일해보고 싶기에 일단은 디즈니에서 개발자로 일할거다. 그러려면 영어로 소통이 되어야 하기에 영어회화공부를 시작했다. 실은 영어 유창하게 말하기 프로젝트는 아주 이전부터 도전하던 과제였지만 오래 지속하지 못하곤 했다. 휴식기가 매우 긴 간헐적 집중이랄까. 그러다가 최근, 정말 하고 싶은 것이 생기고 그에 대한 목표가 세워지다 보니 자연스레 영어회화에 대한 실행력이 생겨났다. 물론 내가 하고싶고 좋아하고 싶은것을 찾기위해 엄청난 고통의 시간을 보낸것은 두말하면 잔소리. (이 이야긴 따로 하도록 하겠다.) 일단 현재 스펙은 읽기 쓰기 듣기는 잘 된다. 영어도 외국가서 여행하기엔 불편함없이 잘 말한다. 하지만 나의 생각을 Fluent하게 말하진 못한다. 아..
-
[Javascript] 실행컨텍스트 flow (코드실행 시 일어나는 과정)To infinity/Javascript 이론 2021. 6. 12. 15:33
2021.06.12 Ver1 책을 읽다보니 반복적으로 나오는 개념들이 있는데 처음엔 그냥 넘어갈 수 있었지만 읽는 챕터가 많아질수록 해당 개념에대한 물음표가 점점 많아지기 시작했다. (왜냐면 처음부터 순서대로 책을 읽지 않기 때문) 바로, 이때가 해당 개념에 대해 공부할 때 이다. 그래서 가장 기본이 되는 용어에 대해 공부하기로 한다. 전체적인 흐름에 대해 먼저 알고나서 해당 개념으로 넘어와서 그런지 좀 더 이해가 잘됐다. 그리고 컴퓨터 용어도 결국엔 하나의 '언어'이기 때문에 현재 우리가 사용하고 있는 '언어'인 '한국어'의 구성과 비교해서 같이 생각하면 좀 더 이해하기 쉬운 것 같다. 1. 기본용어 0. 리터럴 (literal) - 사람이 이해할 수 있는 문자와 기호를 사용해 값을 생성하는 표기법 (..
-
[Javascript] 스코프 scope (유효범위)To infinity/Javascript 이론 2021. 6. 10. 23:57
작성일: 2021.06.10, Ver1 1. 스코프란? - 기본적이고 중요한 내용임. - 자바스크립트의 스코프는 다른 언어의 스코프와 구별되는 특징이 있으므로 주의 (함수 레벨 스코프) 특징을 범위설정방법과 검색규칙 두가지로 나눠보자. 1) 식별자가 유효한 범위를 결정 - 모든 식별자(변수이름, 함수이름, 클래스 이름 등)는 자신이 선언된 위치에 의해 자신의 유효범위가 결정됨. (ex. 함수몸체 내에서 선언된 변수는 함수몸체 내에서만 유효. 변수는 가장 바깥영역, 코드블록, 함수몸체 내에서도 유효.) (1) 자바스크립트는 렉시컬 스코프 (lexical scope)임 - 동적스코프(dynamic scope): 함수를 어디서 호출했는가에 따라 함수의 상위 스코프를 결정 - 렉시컬스코프 또는 정적 스코프(st..
-
[Javascript] 모듈 ModuleTo infinity/Javascript 이론 2021. 6. 10. 23:56
작성일: 2021.06.10, Ver1 1. 모듈이란? - 애플리케이션을 구성하는 개별적 존재. 즉, 애플리케이션과 분리되어 존재 (애플리케이션 내에 있는 독립적인 존재) - 재사용가능한 코드조각, 자신만의 파일 스코프(모듈 스코프)를 가짐 - 모듈 내부에서 선언한 모든 식별자는 해당 모듈 내부에서만 참조할 수 있음. (즉, 남친이 나를 애칭으로 '귀요미'라고 부르면 그건 남친과 나와의 관계(모듈)에서만 해당되는 호칭이고 다른 곳에선 그 누가 '귀요미'라고 불러도 나는 반응하지 않는다.) - 공개가 필요한 자산에 한정하여 명시적으로 선택적 공개가 가능 -> export - 모듈 사용자는 공개한 자산 중 일부, 전체를 자신의 스코프 내로 불러들여 재사용 -> import (누군가 나를 '귀요미'라고 부를 ..