Promise 프로미스는 자바스크립트 비동기 처리에 사용되는 객체이다. 여기서 자바스크립트의 비동기 처리란 '특정 코드의 실행이 완료될 때까지 기다리지 않고 다음 코드를 실행하는 것을 말한다' 동기, 비동기 외울 때 정. 처. 기(정보 처리 기사)를 공부했어서 그런지 선점 비선점으로 공부하니 쉬웠고 전에 교수님의 화장실 비유 때문에 웃어넘긴 기억도 생각났다. 화장실에 변기는 한 명만 사용할 수 있고 나올 때까지 다른 사람이 선점하지 못한다! (동기 되지 못한다.) 반면에 비동기는 사용중인 변기는 놔두고 다른 층 화장실을 간다고 생각했다. 프로미스 기본 코드 function getName(callback){ return new Promise((resolve, reject) => { //성공코드 시 reso..
CSS를 공부하다 보면 이런 코드를 볼 수 있었습니다. 클래스 띄어쓰기 // 두개의 클래스를 모두 가지는 태그 입니다. 부등호 .name > div {// 부등호는 요소의 앞,뒤 내부요소를 선택하는 방법입니다. property: } Selector 띄어쓰기 .name div{ // 띄어쓰기는 .name 내부에 div 모든 요소를 뜻함 property: }
기본 명명법 태그 or 클래스.명칭::placeholder{ color: color; } 예시) #todo-form input::placeholder { text-align: center;//텍스트 가운데 정렬 color: beige; // 색 지정 }
위크맵 맵과 위크맵의 첫 번째 차이는 위크맵의 키가 반드시 객체여야 한다는 점입니다. 원시값은 위크맵의 키가 될 수 없습니다. let weakMap = new WeakMap(); let obj = {}; weakMap.set(obj, "ok"); //정상적으로 동작합니다(객체 키). // 문자열("test")은 키로 사용할 수 없습니다. weakMap.set("test", "Whoops"); // Error: Invalid value used as weak map key 위크맵의 키로 사용된 객체를 참조하는 것이 아무것도 없다면 해당 객체는 메모리와 위크맵에서 자동으로 삭제됩니다. 위크맵 지원 메소드 weakMap.get(key) : 키에 연결된 값 불러오기 weakMap.set(key, value) :..
변수 선언 방식 예전 코드 들을 찾아보다 보면 생각보다 var를 많이 볼수 있다. 이제는 var 대신 let을 많이 쓰지만 사실 왜 let을 사용하는지는 잘 모르고 사용해왔다. 그래서 오늘은 var를 알아보고자 한다. ' var '는 블록 스코프가 없다. var로 선언한 변수의 스코프는 함수 스코프이거나 전역 스코프입니다. 블록 기준으로 스코프가 생기지 않기 때문에 블록 밖에서 접근 가능합니다. 블록 밖에서 접근 할수 있다고 한다. if (true) { var test = true; // 'let' 대신 'var'를 사용했습니다. } alert(test); // true(if 문이 끝났어도 변수에 여전히 접근할 수 있음) (출처 : 모던자바스크립트) 해당 코드가 실행이 가능해진다는 것이다. 이렇게 짧은 ..
가비지 컬렉션(Garbage Collection) 메모리 관리 기법 중 하나로 메모리를 가지고 있지 않은 영역을 해제하는 기능이다. 우리가 사용하는 자바스크립트 는 메모리의 도달 가능성을 기준으로 메모리 관리를 수행한다. 메모리가 참조하지 않고 있다면 해당 변수를 제거하는 기능인데 예를 들어보자 ① X = 10; ②Y = X; ③X = 5; X = ? or Y = ? ①. X는 10이라는 값의 주소를 가지고 있다. ②. Y = X의 주소를 참조한다.( 주소값을 가진다.) ③X는 10의 주소값을 버리고 5라는 값의 주소값을 가진다. 정답 : X = 5 or Y = 10 ※드래그 하세요 위 상황처럼 값이 버려진 10의 주소값은 가비지 컬렉터(garbage collector)에 Select 되어 자동으로 삭제..
함수는 프로그램을 구성하는 주요 '구성 요소(building block)'입니다. 함수 선언 방식으로 함수를 만들 수 있습니다. function 함수이름(복수의, 매개변수는, 콤마로, 구분합니다) { /* 함수 본문 */ } 함수에 전달된 매개변수는 복사된 후 함수의 지역변수가 됩니다. 함수는 외부 변수에 접근할 수 있습니다. 하지만 함수 바깥에서 함수 내부의 지역변수에 접근하는 건 불가능합니다. 함수는 값을 반환할 수 있습니다. 값을 반환하지 않는 경우는 반환 값이 undefined가 됩니다. 깔끔하고 이해하기 쉬운 코드를 작성하려면 함수 내부에서 외부 변수를 사용하는 방법 대신 지역 변수와 매개변수를 활용하는 게 좋습니다. 개발자는 매개변수를 받아서 그 변수를 가지고 반환 값을 만들어 내는 함수를 더..
자바스크립트 자료형 숫자형 : 정수, 부동 소수점 숫자 등의 숫자를 나타낼 때 사용한다. bigint : 길이 제약 없이 정수를 나타낼 수 있습니다. 문자형 : 빈 문자열이나 글자들로 이루어진 문자열을 나타낼 때 사용한다. 불린형 : true, false를 나타낼 때 사용한다. null : null 값만을 위한 독립 자료형이다. 단일 문자를 나타내는 별도의 자료형은 없다. undefined : undefined 값만을 위한 독립 자료형이다. 객체형 : 복잡한 데이터구조를 표현할 때 사용한다. 심볼형 : 객체의 고유 식별자를 만들 때 사용한다. typeof 연산자는 피연산자의 자료형을 알려줍니다. typeof x 또는 typeof(x) 형태로 사용한다. 피연산자의 자료형을 문자열 형태로 반환한다. null..