본문 바로가기

전체 글64

[JavaScript] 비동기 처리 아래의 그림을 보면 동기적 처리와 비동기적 처리를 간단하게 확인할 수 있습니다. 대충 이해가 가시나요? 그림만 보고 정확하게 이해하기는 힘드니 어떤 상황에 사용하는지 어떤 의미인지 알아보겠습니다. \\^-^// 1. 비동기 처리 자바스크립트에서 비동기 처리는 특정 코드의 로직이 끝나는 것을 기다리지 않고 다음 코드를 먼저 실행하는 것을 의미합니다. 동기적 처리는 비동기 처리와 반대로 특정 코드의 로직이 끝나면 다음 코드가 실행되는 것을 말합니다. 비동기적 처리는 작업의 흐림이 끊어지지 않기 때문에 동시에 여러 로직을 처리할 수 있고, 다른 함수를 가져와 사용할 수 있습니다. 예를 들어 한번 보겠습니다. console.log('First'); setTimeout(function() { console.log.. 2021. 9. 3.
[JavaScript] 콜백 함수 (Callback Function) 콜백 함수를 처음 들으면 다시 부르다? 어떠한 의미인지 한 번에 파악하기 힘듭니다. 오늘은 callback 함수가 무엇인지 어떠한 함수인지 알아보겠습니다. :> 1. 콜백 함수 콜백 함수는 다른 함수의 매개변수로 함수를 넘겨주고, 어떠한 이벤트가 발생했거나 특정 시점에 도달했을 때 호출하는 함수를 말합니다. 예시를 들어 설명하겠습니다. 음식점에 주문을 하려고 합니다. 그런데 음식점의 주문이 밀려 지금 당장 해줄 수 없다고 합니다. 그렇다면 음식 준비가 끝나면 음식을 받아갈 테니 전화를 달라고 부탁합니다. 전화가 오기 전까지 자신이 하고 싶은 일을 할 수 있습니다. 이때 음식점에서 전화가 걸려오고 받는 것이 콜백 함수가 호출되는 시점과 같습니다. 2. 콜백 함수 사용법 간단한 콜백 함수의 예로 살펴보겠습니.. 2021. 9. 3.
[JavaScript] this 자바스크립트의 this는 함수를 호출하는 방법에 의해 결정됩니다. this가 사용되는 함수를 어떤 방식으로 실행하느냐에 따라 this의 역할이 구분된다는 것입니다. 글로만 읽어서는 어떠한 의미인지 이해하기 어려우니 4자지 방식을 예를 들어 설명하겠습니다. 1. 일반 함수에서 this 먼저, 일반 함수에서 this는 전역개체(window)를 말합니다. console.log(this); // window 2. 객체 메서드에서 this 객체 메서드로 호출되는 경우에 this는 해당 객체를 가리키게 됩니다. var test = { mtd : function() { console.log(this); } } test.mtd(); // test 여기서 중요한 것은 객체의 메서드로 호출되는 경우라는 것을 기억해야 합니.. 2021. 9. 3.
[JavaScript] 변수 (var, let, const) 변수는 대부분의 프로그래밍 언어를 배울 때 가장 처음 배우는 개념입니다. 변수를 모른다면 프로그램을 작성한다거나 간단한 사칙연산, 복잡한 식의 계산을 처리하기 어려울 것입니다. 그렇다면 변수가 어떠한 것인지 알아보겠습니다! : ) 1. 변수 아래는 자바스크립트에서 변수 v을 선언한 모습입니다. var v; 변수는 어떠한 곳에 사용되는 것일까요? 변수는 데이터를 저장하기 위한 공간 입니다. 간단하게 비유하자면, 변수는 어떠한 값을 저장하는 그릇과 같다고 볼 수 있습니다. 위의 변수에는 지금 아무런 값도 할당되어 있지 않아 undefined라는 초기 값을 가지고 있습니다. 변수 값 할당 변수는 값을 저장할 수 있다고 위에서 설명했습니다. 그렇다면 어떻게 하면 값을 저장할 수 있을까요? var v = 10; .. 2021. 9. 1.
서버 사이드 렌더링과 클라이언트 사이드 렌더링 글자 그대로 생각하면 서버 사이드 렌더링은 서버에서 렌더링 하는 것이고 클라이언트 사이드 렌더링은 클라이언트에서 렌더링 하는 것이라고 생각됩니다. 이번 글에서는 이 의미가 맞는지 확인하고 어떠한 장점과 단점이 있는지 알아보겠습니다. :) 1. 서버 사이드 렌더링 (Server Side Rendering, SSR) 서버 사이드 렌더링은 서버에서 웹 페이지를 렌더링 하여 클라이언트로 전송하는 것입니다. 서버에서 페이지를 그려 놓은 후 브라우저에서 화면에 표시하는 것이라고 말할 수 있습니다. 또한, 서버 사이드 렌더링은 요청마다 새로고침이 일어나 웹 페이저 전체를 다시 로딩하는 특징을 가집니다. 서버 사이드 렌더링은 브라우저에 화면을 표시하는 가장 일반적인 방식입니다. 그러나 요즘의 웹 사이트는 너무나 많은 .. 2021. 9. 1.
REST API 이번에는 HTTP 메서드를 사용하여 자원을 주고받는 방식인 REST API에 대해 알아보겠습니다. 아래 글을 읽으시면 조금 더 쉽게 이해하실 수 있습니다. :> HTTP 프로토콜 url의 앞에 http나 https가 붙어있는 경우를 본 적이 있을 것입니다. 이번 글에서는 HTTP가 무엇인지 알아보도록 하겠습니다. 그리고 HTTP와 HTTPS의 차이점을 간단하게 확인해 보겠습니다. 프로토콜 프 oagree0123.tistory.com 1. REST (Representational State Transfer) REST는 자원을 이름으로 구분하여 해당 자원의 상태를 주고받는 모든 것을 의미합니다. 자원은 데이터베이스 안에 있는 이미지나 데이터 등 소프트웨어가 관리하는 모든 것을 의미하고, 상태의 전달은 데이터.. 2021. 8. 31.
쿠키 & 세션 이전 글에서 HTTP 프로토콜은 요청 후 응답을 받으면 연결을 끊어 버리며, 통신이 끝나면 상태를 유지하지 않는 특성에 대해 확인했습니다. 이러한 특성 때문에 일어나는 문제를 해결하기 위해 쿠키와 세션을 사용합니다. 이번 글에서는 쿠키와 세션에 대해 알아보겠습니다. 기억이 안나거나 어떠한 내용인지 모르시는 분은 아래 글을 읽고 오시면 이해하는데 도움이 될 것입니다. :) HTTP 프로토콜 url의 앞에 http나 https가 붙어있는 경우를 본적이 있을 것입니다. 이번 글에서는 HTTP가 무엇인지 알아보도록 하겠습니다. 그리고 HTTP 와 HTTPS의 차이점을 간단하게 확인해 보겠습니다. 프로토콜 프 oagree0123.tistory.com 쿠키와 세션을 사용해야 하는 이유로 가장 흔한 예시는 로그인을 .. 2021. 8. 30.
HTTP 프로토콜 url의 앞에 http나 https가 붙어있는 경우를 본 적이 있을 것입니다. 이번 글에서는 HTTP가 무엇인지 알아보도록 하겠습니다. 그리고 HTTP와 HTTPS의 차이점을 간단하게 확인해 보겠습니다. 프로토콜 프로토콜은 컴퓨터 내부 또는 컴퓨터 사이에서 데이터의 교환 방식을 정의하는 규칙 체계입니다. 기기간 통신은 교환되는 데이터의 형식에 대해 상호 합의를 요구합니다. 이런 형식을 정의하는 규칙의 집합을 프로토콜이라 합니다. 간단하게설명하자면 "내가 이런 방식으로 줄 테니까 너는 이런 방식으로 받아. 그리고 너가 준 것은 내가 이렇게 받을께" 라고 약속하는 것입니다. 1. HTTP (Hypertext Transfer Protocol) HTTP는 인터넷상에서 데이터를 주고 받기 위한 1) 서버/클라이언.. 2021. 8. 25.
브라우저 동작 방법 이 글은 html5rocks.com에 "How Browsers Work: Behind the scenes of modern web browsers"를 참고하여 작성한 글입니다. 브라우저 주소창에 http://naver.com 나 https://www.daum.net/같은 url을 입력하고 엔터를 누르면 어떻게 새로운 페이지가 뜨는지 배워보겠습니다. 1. 브라우저 브라우저는 웹 페이지, 이미지, 비디오 등 다양한 정보를 수신, 전송, 그래픽 표현을 하는 소프트웨어 이다. 예를 들어 마이크로소프트 엣지, 크롬, 사파리, 파이어폭스 등이 있습니다. 브라우저는 클라이언트 / 서버 모델로 클라이언트는 웹 서버에 접속하여 정보를 요청하고, 서버는 해당 정보를 HTTP프로토콜을 따라 웹 브라우저에 전송합니다. 2. .. 2021. 8. 24.