프로그래밍언어/자바스크립트(JavaScript)

    자바스크립트 - 실행컨텍스트란?

    자바스크립트의 중요한 개념 중 하나인 실행컨텍스트. 실행 컨텍스트란? 실행 코드에 제공할 환경 정보들을 모아놓은 객체. 각 실행 컨텍스트들은 자바스크립트 엔진의 스택에 쌓게 되며 이런 실행 컨텍스트들이 쌓이고 삭제되는 매커니즘에 대해 알고 있으면 자바스크립트 코드 실행 순서를 파악할 수 있게 됩니다. 실행컨텍스트는 언제 생성? 1) 전역 실행 컨텍스트 2) 함수 실행 컨텍스트 3) eval() (사용을 지향) 참고로 전역 실행 컨텍스트는 단 하나만 존재할 수 있고, 함수 실행 컨텍스트는 여러개 존재할 수 있습니다. 실행컨텍스트의 과정 LIFO (1) 실행컨텍스트 = [ 전역 컨텍스트 ] (2) 실행컨텍스트 = [ 전역 컨텍스트, outer 함수 컨텍스트 ] (3) 실행컨텍스트 = [ 전역 컨텍스트, ou..

    자바스크립트로 큐를 구현할 때는 splice 보단 shift

    자바스크립트로 큐를 구현할 때는 splice 보단 shift 그 동안 나는 큐를 돌릴때 splice 를 사용해왔다. 딱히 splice를 사용해서 막혔던 문제들은 크게 없었던 것 같다. 근데, 이 문제에서 막혔다. https://bmy1320.tistory.com/entry/%EB%B0%B1%EC%A4%80-Gold-4-%EB%AC%B8%EC%A0%9C-%EB%B0%B1%EC%A4%80-Nodejs-%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-4179-%EB%B6%88 백준/ Gold 4 문제 , 백준 Node.js 자바스크립트 4179 불! 백준/ Gold 4 문제 , 백준 Node.js 자바스크립트 4179 불! ✔️Check Point ! ( 해당..

    자바스크립트 배열 rotate 구현 (오른쪽, 왼쪽 회전)

    자바스크립트 rotate 구현 배열을 돌리는 함수를 구현 연습 해보았는데 참고해서 사용해보시길 바란다. 왼쪽으로 돌리는 함수랑 오른쪽 으로 돌리는 함수가 있다. 만약 배열이 [1, 2, 3, 4, 5] 라고 가정했을때, 오른쪽으로 3만큼 회전 시키면 [3, 4, 5, 1, 2] 가 되게 된다. 반대로 왼쪽으로 2만큼 회전 시키면 [3, 4, 5, 1, 2] 가 되게 된다. 회전하는 방향으로 숫자들이 밀린다고 생각하면 된다. 만약 배열의 길이보다 긴 7만큼을 왼쪽 회전 시킨다면 한바퀴를 돌고 남은 2만큼 왼쪽으로 2개 밀린다 생각하면 된다. 그럼 [1, 2, 3, 4, 5] 에서 왼쪽으로 2개가 밀려 [3, 4, 5, 1, 2] 이 나오게 된다.

    자바스크립트(JavaScript) - 표현식과 문

    자바스크립트(JavaScript) - 표현식과 문 표현식과 문 값 이란? 값이란 식(표현식)이 평가되어 생성된 결과를 말한다. 변수에 할당되는 것이 바로 값이다. 리터럴 이란? - 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용하여 값을 생성하는 표기법 표현식 이란? 값으로 평가될 수 있는 문(statement) 을 말한다. 표현식이 평가되면 새로운 값을 생성하거나 기존값을 참조한다. 문 (statement)이란? 문은 프로그램을 구성하는 기본 단위이자 최소 실행 단위이다. 이 문은 여러 토큰으로 구성되어있다. 토큰이란 문법적인 의미를 가지며, 문법적으로는 더 이상 나눌 수 없는 코드의 기본요소를 말한다. ex) var score = 1 + 2; 라는 문이 있을때, 각각 var, score, =, ..

    자바스크립트(JavaScript) - 변수

    자바스크립트(JavaScript) - 변수 변수 변수란? 기억하고 싶은 값을 메모리에 저장하고 저장된 값을 읽어 들여 재사용하기 위해 쓰임. 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙이는 이름이다. 값의 위치를 가르키는 상징적인 이름. 예를 들어 1+2=3 이라는 연산을 통해 3이라는 숫자를 생성하였다. 이 생성된 3은 메모리의 임의의 위치에 저장되는데, 이 값을 다시 읽어들여 재사용할 수 있도록 값이 저장된 메모리 공간에 그 값을 상징하는 이름을 붙인 것을 변수 라고 한다. * 할당 : 변수에 값을 저장하는 것. * 참조 : 변수에 저장된 값을 읽어 들이는 것. 식별자란? 식별자는 어떤 값을 구별해서 식별할 수 있는 고유한 이름을 말한다. 값이 아니라 ..

    자바스크립트(JavaScript) - 스코프(Scope)란?

    자바스크립트(JavaScript) - 스코프 스코프는 자바스크립트 뿐만 아니라 다른 프로그래밍 언어에서도 중요하게 여겨지는 개념이다. 스코프는 "식별자가 유효한 범위" 를 말하는데, 모든 식별자(변수명, 함수명, 클래스명 등)는 자신이 선언된 위치에 따라 다른 코드에서 식별자를 참조할 수 있는 유효한 범위가 정해진다. 스코프의 종류 구분 설명 스코프 변수 전역 코드 가장 바깥쪽 영역 전역 스코프 전역 변수 지역 함수 내부 지역 스코프 지역 변수 다음과 같은 코드가 있다. 이 코드의 지역코드와 전역코드를 구분해보면 다음과 같겠다. 출력은? 이와 같이 된다. 만약 numChangeIn 함수 내에 있는 var num = 100; 코드를 지운다면? 한단계 상위 스코프에 선언된 num=10이라는 값을 출력시킨다...

    자바스크립트(JavaScript) - 이벤트 버블링이란?

    자바스크립트(JavaScript) - 이벤트 버블링이란? 이벤트 버블링이란 무엇일까? - 어떤 하나의 요소에 이벤트가 발생하게 되면, 해당 이벤트가 동작한 뒤에 부모 요소의 이벤트 핸들러가 이어서 작동하게 되는데, 이 현상은 부모요소를 계속 거슬러 올라가 윈도우 객체를 만날때까지 진행되고, 자식요소부터 부모요소, 그 부모요소의 부모 요소 로 계속 올라가는 현상이 마치 거품이 올라가는 현상과 비슷하여 이것을 이벤트 버블링이라고 한다. 한 번 확인해보자. 다음과 같은 html 코드와 js 코드가 있다. 여기서 빨강,주황,노랑,초록,파랑 버튼을 클릭하게 되면 콘솔에 어떻게 나타날까? 이렇게 세개의 텍스트가 출력되는 것을 확인할 수 있다. 아니 item Event 가 출력되는건 이해하겠어. 근데 list Eve..