목록Javascript (5)
헛소리
내부함수B를 반환하는 외부함수A. 이때 내부함수B에서 외부함수A의 지역변수를 참조한다면 외부함수A는 실행된 후 사라지더라도 반환된 내부함수B에서 외부함수A의 지역변수를 사용할 수 있다. const A = ()=>{ const a = 2; return ()=>{ return a; } } const B = A() console.log(B()) // 2 함수A는 실행 후 사라지지만 함수 B에서 함수 A의 지역변수 a를 사용할 수 있다. 클로저 예시 for(let i = 0; i{console.log(i)},1000) } for문은 실행후 끝나지만 변수 i 는 setTimeout의 콜백함수에 남아 시간이 지난 후 출력 됨
자바스크립트는 싱글스레드이다. 스레드가 하나라는 뜻이다. 스레드란? 스레드(thread)는 어떠한 프로그램 내에서, 특히 프로세스 내에서 실행되는 흐름의 단위를 말한다. 일반적으로 한 프로그램은 하나의 스레드를 가지고 있지만, 프로그램 환경에 따라 둘 이상의 스레드를 동시에 실행할 수 있다. 이러한 실행 방식을 멀티스레드(multithread)라고 한다. 멀티스레딩 위키백과, 우리 모두의 백과사전. 둘러보기로 가기 검색하러 가기 두 개의 실행 스레드를 가진 프로세스가 하나의 프로세서 위에서 실행 중인 모습. 멀티스레딩(multithreading) 컴퓨터는 여러 개의 ko.wikipedia.org 멀티스레드에서는 스레드가 여러개이기 때문에 코드의 실행이 병렬로 이루어진다. 자바스크립트는 스레드가 하나라서 ..
Object는 값에 키를 할당할 수 있고, 그 키로 값을 얻을 수 있고, 키를 삭제할 수 있으며 어떤 키에 값이 존재하는지 확인할 수 있다는 점에서 Maps와 유사합니다. 이러한 이유와, 내장 대체제가 없었기 때문에 역사적으로 Object를 Map 대신 사용하곤 했습니다. 그러나 어떤 상황에선 Map을 고려해야 할 몇 가지 중요한 차이점이 있습니다. Object의 키에는 String과 Symbol을 사용할 수 있지만, Map은 함수, 객체, 원시 자료형 등 어떤 값도 사용할 수 있습니다. Map의 키는 삽입순으로 정렬되지만 Object의 키는 그렇지 않습니다. 따라서 Map을 순회하면 키를 삽입한 순서대로 반환합니다. Map의 크기는 size 속성으로 쉽게 얻을 수 있지만 Object의 속성 수는 직접 ..
Javascript의 타입(type)에는 두가지의 종류가 있습니다. - 원시타입(Primitive Type) 5개 boolean, number, string, null, undefined - 참조타입(Reference Type) Object, Array, Function 원시타입은 선언할 때 메모리에 선언 하는 값 자체가 들어갑니다. 참조타입을 선언할 때에는 실제 데이터가 저장되어 있는 주소값이 저장됩니다. 원시타입을 복사할 때에도 데이터 자체가 복사되지만 let a = "foo" let b = a // "foo" 참조타입을 복사할 때에는 주소값이 복사됩니다. let a = { foo: 1 } let b = a // (작성중)
substr() 메서드는 문자열에서 특정 위치에서 시작하여 특정 문자 수 만큼의 문자들을 반환합니다. var str = 'Mozilla'; console.log(str.substr(1, 2)); // expected output: "oz" console.log(str.substr(2)); // expected output: "zilla" substring()메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다. var str = 'Mozilla'; console.log(str.substring(1, 3)); // expected output: "oz" console.log(str.substring(2)); // expected output: "zilla"..