javascript

eugene's blog·2021년 7월 22일
0
post-thumbnail

유효 범위 - block scope( block : {} )

예외) var의 유효 범위 - function scope → let, const 권장(직관적이지 않음)

Hoisting - 아래 있는 선언을 끌어올리는 것 → var에서 나타나는 현상 (let은 Hoisting없음)

age = 6;

var age;

자료형(Data Types) - 동적 타이핑(Dynamic Typing)

let i = "Mark" // String
i = 37 // Int
i = true // Boolean
  • 기본 타입(Primitive values)

    • Boolean

    • Null

    • Undefined

    • Number

    • String

    • Symbol(ES6에 추가) - 고유한 것

      const a = Symbol()
      const b = Symbol('Mark')
      const c = Symbol('Mark')
      
      b !== c
  • Object

== → 값만 비교

=== → 값이랑 자료형 비교

NaN(Number)

function

const function1 = () => {
	console.log('function1');
};

const function2 = name => {
	console.log('function2', name);
};

const function3 = (name, age) => {
	console.log('function3', name, age);
}

const function4 = name => {
	return `function4 ${name}`
}

const function5 = name => `function5 ${name}`

⇒ 는 this를 가지지 않는다

Template Leteral → function ${name}

function plus(base) {
	return function(num) {
		return base + num;
	};
}

const plus5 = plus(5);
console.log(plus5(10));

const plus7 = plus(7);
console.log(plus7(8));

함수를 인자로 하여 함수를 호출

function hello(c) {
	 console.log('hello');
	 c();
}

hello(function(){
	console.log('callback');
});

Object

생성자 함수로 객체 만들기

function 틀(){} ⇒ new 틀()

Class

선언적 방식

Class A {}

class 표현식을 변수에 할당

const B = class {};

class B {
	constructor(){
	
	}
}

Promise

new Promise(/* executor */);

new Promise((resolve, reject) => {})

new Promise((resolve, reject) -> {}) // pending(대기)

new Promise((resolve, reject) => {
	// pending
	...
	resolve(); //fulfilled(이행)
})

new Promise((resolve, reject) => {
	// pending
	...
	reject(); //rejected
})

function p() {
	return new Promise((resolve, reject) => {
		setTimeout(() => {
			resolve();
			reject(new Error('bad'));
		}, 1000);
	});
}

p()
	.then(() => {
		//callback
	})
	.catch((error) => {
		console.log('rejected', reason)
	})
	.finally(() => {
		
	});

내장함수

forEach

map

indexOf - 특정 값이 어디 있는지 알아내고 싶을 때

findIndex - 특정 조건에 맞는 원소의 위치 알아낼 때

find - 객체 찾아낼때

filter - 특정 조건을 만족하는 원소들로 새로 배열을 만들 때

splice(기존 배열에 영향) & slice(기존 배열에 영향 X) - 특정 원소 지우기

shift - 맨 왼쪽 | pop - 맨 오른쪽

concat - 배열끼리 합칠 때

join - 배열을 문자열로 합칠 때(separator 사용)

reduce - accumulator, current

profile
매일 노력하는 개발자 김유진입니다.

0개의 댓글