본문 바로가기

분류 전체보기29

[javascript]Hoisting? 호이스팅(Hoisting - 끌어올리다) 변수 선언, 함수 선언 등이 스코프 최상단으로 끌어올려진 것 같은 현상 원인 javascript의 경우 인터프리트 언어로 한 줄씩 읽으면서 실행하지만 그전에 먼저 변수, 함수 등의 선언문을 찾아내 힙 메모리에 적재하기 때문입니다. 이때 let, const와는 다르게 var는 선언과 동시에 undefined로 초기화까지 하는데 이로 인해 똑같이 hoisting 돼도 let과 const는 다르게 작동합니다. 예제 소스로 확인 1) 선언문이 먼저 힙에 적재되는지 확인 console.log(a); //var a로 선언되어있기 때문에 선언과 동시에 undefined로 할당 - 참조 가능 : undefined console.log(b); //let b로 선언되어있기 때문에 .. 2022. 1. 10.
[Eclipse]이클립스 js파일 흑백으로 나올 때(기본 Editor 지정 방법) 1. 증상 이클립스 버전업이나 설정 변경 후에 파일을 열 때 기존이랑 다르게 흑백으로 나오는 경우가 있습니다. 예시) JS파일 2. 원인 파일들을 열 때 기본 Editor가 변경되어서입니다. 간단하게는 우클릭 -> Open With -> Editor 선택을 통해 원하는 Editor를 선택할 수 있습니다. 하지만 이 방법으로 매번 열 수 없으니 조치에서 기본 Editor 지정하는 방법을 보여드리겠습니다. 3. 조치 ※ 특정 확장자의 파일들을 열 때 Editor 지정하는 방법 Window -> Preferences -> File Associations에 들어가시면 File type 별로 Editor를 볼 수 있습니다. JS 파일이 흑백으로 나오는 이유는 이 설정에서 기본 Editor가 Text Editor로.. 2021. 10. 1.
checkbox type의 input 태그를 Array를 이용해 radio 효과 나타내기 간단하게 javascript의 Array를 통해 Queue 형식(FIFO)으로 데이터를 처리 queue의 Enqueue : Array의 push(value)를 사용 - 배열에 value를 추가 queue의 Dequeue : Array의 shift()를 사용 - 배열에서 첫 번째 value를 제거하며 반환 체크박스를 선택하면 Array에 값을 추가하고 Array가 체크 가능한 최대 개수를 넘을 시 shift를 통해 제일 먼저 선택된 값을 제거하여 Radio처럼 동작하게 합니다. See the Pen radio checkbox by kjg20260 (@kjg20260) on CodePen. 2021. 9. 30.
튜플 기본 원리 원소의 순서가 바뀌어도 되기 때문에 복잡해 보이지만 순서를 알파벳 순서대로 정렬한다면 쉽게 이해할 수 있습니다. (a) 튜플은 {{a}} (a,b) 튜플은 {{a}, {a,b}} (a,b,c) 튜플은 {{a},{a,b},{a,b,c}} . . . 반복 (a,b,d,c,e) => {{a},{a,b},{a,b,c},{a,b,c,d},{a,b,c,d,e}} 문제에선 집합을 주면 튜플을 구하라고 하였으므로 {{a},{a,b},{a,b,c},{a,b,c,d},{a,b,c,d,e}}가 주어지면 [a,b,c,d,e]를 반환하면 됩니다. 관계를 찾아보면 튜플의 첫 번째인 a는 모든 집합에 포함됩니다. 두 번째인 b는 1개짜리 집합을 제외한 모든 집합에 포함됩니다. 즉, 주어진 문자열에서 제일 많이 포함되는 .. 2021. 7. 15.