
JavaScript는 웹 페이지를 위한 스크립트 언어로 만들어졌지만 Node.js를 이용하면 브라우저가 아닌 서버 환경에서도 사용할 수 있는 만능 언어!
데이터 타입 원시 타입 : 객체가 아닌 다른 모든 타입 : 메서드를 갖지 않음 null : 비어있는 값을 표현 > ⚠️ 경고 typeof로 null을 확인했을 때 'object'라는 결과가 반환됨. undefined : 값이 할
\| \| :-: \| :---------------: \|| 1 | 연산자(| 2 | 조건문(| 3 | 반복문(| 4 | 함수(| 5 | 이벤트(| 6 | 주석(\+, -, \*, /, %, \*\*, , , , , , , \`\`===
데이터 타입을 바꾸는 것자바스크립트에서 자동으로 바뀐 것문자열과 다른 데이터 타입을 + 연산하면 문자열로 변환된다\+ 연산자를 제외한 연산에서는 숫자가 우선시 된다개발자가 의도적으로 바꾼 것

Javascript는 프로토타입 언어이다.자바스크립트에는 클래스가 없지만 프로토타입이 존재한다.클래스가 없으니 상속 기능도 없지만 프로토타입을 이용하여 상속을 흉내낼 수 있다.자바스크립트에 Class 문법이 추가되었다. (JS가 클래스 기반으로 바뀐 것은 아님)함수와

참조값이 undefined 또는 null이면 error를 발생시키는 대신 undefined를 return한다.

??는 왼쪽 값이 Nullish일 때, ||는 왼쪽 값이 Falsy일 때, &&는 왼쪽 값이 Truthy일 때 오른쪽 값을 반환한다.

객체 안에 속성이 포함되어 있는지 여부를 return 한다
for for in for of forEach() while do...while 참고 자료 [2022.04.10] 자바스크립트 반복문 (for, for in, for of, forEach(), while문) | reasonz
인터넷에서 맨날 섹션 별로 스크롤 되는 이벤트 구현할 때 이 티스토리 코드 사용해서 구현했었는데, jquery를 이용하여 구현하기 때문에 이번엔 javascript만을 이용해서 구현하고 싶었다.나는 Next.js로 개발을 진행했기 때문에 useEffect 안에 넣어줬다
push(value): 배열의 끝에 value를 추가unshift(value): 배열의 앞에 value를 추가splice(index, 0, value1, value2, ...): index에서 0개의 원소를 삭제한 후, value1, value2, ...를 넣음⚠️ 주
객체나 배열을 변수로 분해할 수 있게 해주는 특별한 문법'모든 이터러블(iterable, 반복 가능한 객체)'에 구조 분해 할당을 적용할 수 있습니다.할당 연산자 좌측엔 ‘할당할 수 있는(assignables)’ 것이라면 어떤 것이든 올 수 있습니다.필요하지 않은 배열
가장 일반적으로 사용하는 방식함수를 변수에 할당.함수는 일급 객체이다: 일반적인 연산이 모두 가능함수는 다른 함수의 매개변수가 될 수 있고 반환값이 될 수 있고 할당도 가능하다호이스팅: 변수/함수에 대한 선언을 실행 전에 미리 메모리에 등록하는 작업. 함수 선언문이 마
null이나 undefined와 비교할 때만 true를 return 한다.기타 비교 연산 시(<, <=, >, >= ...) null은 0으로 변환된다.null이나 undefined와 비교할 때만 true를 return 한다.기타 비교 연산 시(<, &
map()과 flatMap()은 상당히 유사하다. https://jerryjerryjerry.tistory.com/159
this는 함수가 호출될 때 결정된다.이때, this는 car 객체인 {name: 'KIA', getName: ƒ}이다.하지만, globalCar라는 변수에 car.getName이라는 함수를 할당한 다음 실행하면?this는 호출한 객체를 가리킴을 알 수 있다.btn이
배열과 객체는 크기가 커서, '별도의 공간'에 저장된다.그렇다면 배열과 객체를 담고 있는 변수에는 어떤 값이 저장되어 있는가?객체/배열이 저장되어 있는 '별도의 공간'의 주소가 저장되어 있다.이로 인해 나타나는 문제가 있다.내용이 같은 객체지만, 같은 객체인지 비교하면

식별자가 본인이 선언된 위치에 따라 다른 코드에서 자신이 참조될 수 있을지 없을지 결정되는 것스코프가 계층적으로 연결되어 있는 것블록 레벨 스코프: let, const함수 레벨 스코프: var위와 같이 생명 주기를 마감한 외부 함수 outer의 지역 변수 x를 참조할
let, constarrow function삼항 연산자구조분해할당단축 속성명 : property shorthand객체를 정의할 때 키값 === 변수이름 일 때, 하나만 써준다.전개 구문 : spread operator템플릿 리터럴

Map, Set은 자료구조 중 하나로 기존의 객체나 배열보다 데이터의 구성, 검색, 사용을 효율적으로 처리할 수 있도록 한다.
데이터는 메모리에 어떤 방식으로 저장될까?메모리에 할당되는 방식은 변수의 데이터 타입에 따라 나뉜다.데이터 타입에는 두 가지가 있다. 기본형과 참조형!기본형에는 우리가 자주 사용하는 number, string, boolean, null, undefined, Symbol
실행할 코드에 제공할 환경 정보들을 모아놓은 객체이다.함수가 호출되면, 콜스택에 실행 컨텍스트가 push 된다.함수가 종료되면, 종료되면 콜스택으로부터 pop 된다.최상단에 있는 컨텍스트가 활성화된 컨텍스트이다.가장 아래에는 항상 전역 컨텍스트가 담긴다.실행 컨텍스트는
콜백 함수를 중첩해서 사용하여 **들여쓰기 지옥**에 빠지는 것. > **콜백함수란?** 어떤 함수의 파라미터로 사용되는 함수 순차적으로 함수를 실행하고 싶을 때 사용한다. 주로 이벤트 처리나 서버 통신과 같은 **비동기 작업을 수행**할 때 발생한다. **가독성**

비동기 처리를 위한 객체 Promise에 대해 이번엔 반드시 완벽하게 이해해보자..!

채용 과제 중 이해할 수 없는 상황이 발생했다.page에서 ELayout을 정의하고 ProductItem에서 import해서 쓰려고 했는데, ProductItem에서 아래의 오류가 발생했다.응? import를 제대로 했는데, vscode에서도 경로가 인식되는데 왜 un