일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- error
- git
- 코드카타
- 구글 로그인
- Next
- js
- 소셜 로그인
- 코테
- 프로젝트 셋팅
- useRouter
- 티스토리챌린지
- nextjs
- 모던 자바스크립트
- 프로그래머스
- 자주 까먹는
- 셋팅
- 스파르타코딩클럽
- vscode
- React
- 내일배움캠프
- 코딩테스트
- 초기셋팅
- array정적메서드
- CORS
- vercel
- domain
- 오블완
- 최적화
- 모던자바스크립트
- deep dive
- Today
- Total
목록Book (20)
도록
자바스크립트 객체 분류1. 표준 빌트인 객체 : ECMAScript 사양에 정의된 객체2. 호스트 객체 : 실행환경 (브라우저, node.js)에서 제공 (ex. DOM, fecth 등)3. 사용자 정의 객체 래퍼 객체 : 객체처럼 접근하면 생성되는 임시 객체 원시값을 객체처럼 사용하면, 자바스크립트 엔진은 암묵적으로 연관 객체를 생성하여 프로퍼티에 접근하거나 메서드를 호출하고 다시 원시 값으로 되돌린다.const str = 'hello';str.name = 'Lee'; // 여기에서 str은 암묵적으로 생성된 래퍼 객체이다.console.log(str.name); // undefinedconsole.log(typeof str, str); // string hello 전역 객체: ..

오류 발생 가능성을 높이거나 최적화 문제를 일으킬 수 있는 코드에 대해 명시적 에러를 발생시킴으로서, 자바스크립트 문법을 좀더 엄격히 적용한 것이다. 유사한 역할로서 린트들을 사용하는데, 린트 도구는 제한 오류부터 코딩 컨벤션까지 설정 파일 형태로 정의할 수 있기에 조금 더 강력하다. stric mode 적용하기 전역의 혹은 함수 몸체의 선두에 'use strict';를 추가한다.'use strict';function foo() { x= 10; //ReferenceError : x is not diefined (stric mode가 아니면 에러가 나지 않음)}foo(); strict mode 적용 시, 뭐가 다른가요?Reference Error: 선언하지 않은 변수를 참..
자바스크립트는 멀티 패러다임 프로그래밍 언어이다. 객체지향 프로그래밍 프로그램을 객체의 집합으로 표현하려는 패러다임이다. 실세계의 실체(사물이나 개념)는 특징이나 성질을 나타내는 속성(attribute/property)를 갖고 있고, 속성을 통해 여러 개의 값을 하나의 단위로 구성한 복합 자료구조를 객체라고 한다. 꼭 필요한 속성만 간추려 표현하는 것을 추상화라고 한다. 객체 지향 프로그래밍은 객체의 상태(state)를 나타내는 데이터, 그리고 상태를 조작할 수 있는 동작(behavior)을 하나의 논리 단위로 묶어서 생각하는 것이다. 이때 객체의 상태 데이터를 프로퍼티(property), 동작을 메서드(method)라고 부른다. const Person = { name : '떼굴펜', ..
일급 객체1. 무명의 리터럴로 생성할 수 있다. 즉 런타임에 생성이 가능하다.2. 변수나 자료구조에 저장할 수 있다.3. 함수의 매개변수에 전달할 수 있다.4. 함수의 반환값으로 사용할 수 있다. 함수 객체의 프로퍼티1. arguments : 매개변수 객체 순회 가능한 유사 배열 객체이며,함수 내부에서 지역 변수처럼 사용된다.매개변수 개수를 확정할 수 없는 가변 인자 함수를 구현할 때 유용하다. 2. caller : 함수 자신을 호출한 함수.참고) 비표준 프로퍼티이기에 사용하지 말자 3. length : 선언한 매개변수의 개수arguments.length와 함수 객체의 length는 다른 수 있다. 4. name : 함수의 이름 5. __proto__ 접근자 : [[prototype]] 내부 슬롯이 ..
생성자 함수 자바스크립트는 new 연산자와 함께 사용하는 여러 빌트인 생성자 함수를 제공한다.new String('Hello');new Number(123);new Boolean(true);new Function('x', 'return x * x');new Array(1 ,2, 3);new RegExp(/ab+c/i);new Date(); 객체 리터럴 방식으로 이용하면 되는데 왜 생성자를 제공할까? 생성자의 장점 동일한 프로퍼티를 갖는 객체를 여러 개 생성해야 하는 경우, 리터럴보다 효율적이다. 객체(인스턴스)를 생성하기 위한 템플릿처럼 생성자 함수를 사용하여 동일 프로퍼티 구조의 객체를 여러개만들 때 간편하다. // 방법 1) 리터럴 방식const circle1 = { radius: 5, ..
전역 변수는 생명 주기는 어플리케이션의 생명주기와 같다. 전역 변수의 문제점암묵적 결합 : 코드 어디에서든 참조하고 할당할 수 있다. (코드 가독성과 값 변경 위험성이 높다.)긴 생명 주기 : 메모리 리소스를 오랜 시간 소비하며, 변수 이름이 중복될 경우, 의도치 않은 재할당이 이뤄진다.스코프 체인의 마지막에 존재 : 전역 변수의 검색 속도가 제일 느리다.네임스페이스 오염 : 동일 식별자가 존재할 경우 예상과 결과가 달라질 수 있다. 전역 변수 쓰지말고 이렇게 해보자1) 즉시 실행 함수 모든 코드를 즉시 실행 함수로 감사면 그 안의 모든 변수는 즉시 실행 함수의 지역 변수가 된다. 이렇게 사용하면 전역 변수를 생성하지 않으므로 라이브러리 등에 자주 사용된다.(function () { const ..