분류 전체보기105 클로저의 기본 개념 자바스크립트를 공부하면서 클로저가 생소하게 다가와 조금 더 공부하기로 하였다. 예시는function outer() { let count = 0; function inner() { return ++count; } return inner;}let increment = outer();console.log(increment()); // 1console.log(increment()); // 2이 코드를 사용해서 설명을 해보려고 한다. 위에코드를 보면 간단하게 보았을 때는 처음에outer() 함수를 계속해서 호출하게 되니깐 그때마다 count = 0으로 새로 초기화가 되는 것 아닌가 생각해서값이 1이 두번 나온다고 생각이 되었다. (java만 사용해본 개발자 답게) 하지만 자바스크.. 2024. 12. 10. 스코프와 클로저 자바스크립트에서는 스코프 때문에 var를 사용하면 원하는 인덱스를 나타내기가 어려울 수 있다. 아래의 세개의 div를 이벤트리스너를 추가하여 각각의 인덱스를 alert으로 나타내려고 할때 Click me! DIV 0 Click me! DIV 1 Click me! DIV 2 var를 사용하면for (var i = 0; i 결과 값이 어디를 클릭해도 3을 출력하게 된다. 이유는 var는 함수 스코프로 사용되고 있기 때문에 함수 밖에서 선언된 i는 전역변수로 어디서나 사용할 수 있게된다.여기서 for문을 돌면서 이벤트리스너가 추가되지만 "click" 이벤트가 발생할 때 i 값을 참조하여 값을 출력하게 되는데i가 전역 변수로 for문을 돌아 3으로 설정되기 때문에 어디서 클릭을 하더라도 3이라는 숫자가 출력되.. 2024. 12. 10. JavaScript의 Scope 자바스크립트의 스코프스코프란 현재 접근할 수 있는 변수들의 범위를 의미합니다. 변수가 스코프 안에 선언되면 해당 스코프 내에서만 접근 가능하고, 스코프 밖에서는 접근할 수 없습니다. scope의 생성 자바스크립트는 다른 언어와는 달리 일반적인 블록 스코프를 따르지 않음. 자바스크립트의 스코프는 특정 구문이 실행될 때 생성하여, 스코프 체인을 생성하게 됨. scope를 생성하는 구문은 다음과 같다. - function - catch- with => 사용하지 말아야할 구문 다른언어인 자바의 경우 {} 블록을 통해서도 스코프를 정하지만 자바스크립트의 경우에는 {}을 통해서는 스코프를 만들 수 없다. 1. function문의 스코프 var globalVar = "전역 변수";let globalLet = "전역 .. 2024. 12. 9. 99클럽 코테 스터디 17일차 TIL + 기술 연계마스터 임스 - 오늘의 학습 키워드 - 공부한 내용 본인의 언어로 정리하기 - 오늘의 회고 - 어떤 문제가 있었고, 나는 어떤 시도를 했는지 - 어떻게 해결했는지 - 무엇을 새롭게 알았는지 - 내일 학습할 것은 무엇인지 필수 해시태그: #99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL 2024. 11. 14. 99클럽 코테 스터디 16일차 TIL + 카드1 - 오늘의 학습 키워드 : 큐- 오늘의 회고 - 어떤 문제가 있었고, 나는 어떤 시도를 했는지큐와 스택을 같이 사용해서 풀려고 했으나 스택은 사용하지 않아도 쉽게 문제를 풀 수 있었다.... [백준 2161] 카드1 (Java)문제N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다.이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다.예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. 1을 버리면 234가 남는다. 여기.. 2024. 11. 12. 99클럽 코테 스터디 15일차 TIL + 같은 숫자는 싫어 제목: - 오늘의 학습 키워드 : 스택/큐, ArrayList- 오늘의 회고나는 이문제를 ArrayList로 해결했다.근데 문제 힌트를 보니 스택 / 큐 였는데 오히려 어려운거 같다..문제 풀이import java.util.*;public class Solution { public int[] solution(int []arr) { List list = new ArrayList(); list.add(arr[0]); for( int i = 1; i 스택을 사용한 풀이import java.util.*;public class Solution { public int[] solution(int []arr) { Stack stack = ne.. 2024. 11. 11. 이전 1 2 3 4 5 ··· 18 다음