본문 바로가기

JavaScript19

ES6 ) 비구조화 할당 비구조화 할당 비구조화 할당이란 ?? 비구조화 할당은 배열, 객체, 반복 가능 객체에서 값을 꺼내어 그 값을 별도의 변수에 대입하는 문장입니다. 배열에서의 비구조화 할당 기본적인 사용법 let [a,b] = [1,2]; 이 코드는 변수 a와 b를 선언한 뒤 우변의 배열에서 요소를 하나씩 꺼내어 인덱스 순서대로 a, b 에 대입합니다. 우변의 배열을 분할해 좌변의 변수에 할당하므로 분할 할당이라고도 합니다. 이미 선언된 변수를 비구조화 할당하기 [a,b] = [2*a, 3*b]; // a = 2a, b= 3b 와 같음 [c,d] = [d,c]; // c 값과 d 값을 교환 반드시 우변과 좌변의 개수가 같을 필요는 없습니다. 만약 좌변의 변수 개수가 우변의 값 개수보다 많다면 좌변의 남는 변수에는 undef.. 2022. 1. 28.
JavaScript ) 다차원 배열 생성 JavaScript 에서의 다차원 배열 자바스크립트는 다차원 배열을 정의하는 문법은 존재하지 않습니다. 하지만 배열에 배열을 중첩하면 다차원 배열과 유사한 기능을 구현할 수 있습니다. 2차원 배열의 생성 let x = new Array(3); // 1차원 배열 생성 for(let i=0; i 2022. 1. 27.
express ) Router 라우팅이란 ? 처리 로직을 따로 관리해 사용자가 접속한 URL 과 method 에 따라 해당 록직을 실행하는 것입니다. 라우팅 등록 먼저 express 를 설치합니다. npm install -s express express 에서는 라우팅을 직관적으로 표현합니다. const express = require('express'); let app = express(); require 를 이용해 express 를 가져옵니다. 그 다음 express 로 만들 서버를 세팅하기 위해 app 변수를 만듭니다. app 변수에는 우리가 필요한 각종 서버의 라우팅, 미들웨어, 에러 처리 로직을 설정합니다. const http = require('http'); http 서버를 만들기 때문에 http 모듈을 가져옵니다. app... 2022. 1. 17.
node.js ) 웹서버 기초 (2) - GET, POST, 정적/동적 파일제공 GET, POST, 정적 / 동적 파일 제공 클라이언트 요청에 따라 다양하게 처리해보는 방법과 fs 모듈을 이용해 이미지, html 과 같은 파일을 전송하는 방법에 대해 알아보겠습니다. 사용자의 요청에 따라 처리할 때 다음의 두 가지가 가장 중요합니다. URL methods URL 로 어떤 method 로 요청했는지만 파악하고 해당 요청에 맞추어 코드를 실행하여 응답하면 됩니다. GET 요청 처리 요청 객체에서 method 가 GET 이 맞는지 검사 후 GET 요청을 처리할 수 있습니다. 요청 객체에서 확인한 URL 과 method 를 이용해 조건 분기를 해줍니다. const http = require("http"); http.createServer((req, res) => { let { url, hea.. 2022. 1. 16.
Node.js ) 웹서버 기초 (1) - http 모듈, 요청 객체, 응답객체 해당 글의 코드는 Postman을 이용해 테스트를 진행합니다. Web Server 호출하기 http 모듈을 이용 // 모듈을 사용하기 위한 준비 const http = require("http"); // 요청을 받아와 응답하는 부분 // 첫 번째 인자로 사용자가 요청할 때 처리하는 콜백함수를 받는다. http.createServer((req, res) => { res.writeHead(200); // 응답코드를 200으로 설정 res.end("hello world"); // 요청을 끝냄 }) .listen(3000, () => { console.log("server on : 3000 port"); }); 콜백함수는 2개의 인자를 받는데 첫 번째가 요청 객체, 두 번째가 응답 객체입니다. listen 은 .. 2022. 1. 15.
JavaScript ) 배열 기초 배열 function get_members(){ return ['durant','lebron','leonard']; } members = get_members(); // members.length는 배열에 담긴 값의 숫자를 알려준다. for(let i=0; i 2022. 1. 14.
JavaScript ) 버그 잡아내기 버그의 원인 프로그램에서 발생하는 버그의 원인은 크게 3 가지로 나눌 수 있습니다. 1. 논리적인 버그 프로그램은 문제 해결을 위한 알고리즘을 구현한 것입니다. 논리적인 버그는 프로그램을 구성하는 알고리즘 자체에 오류가 있거나 해당 알고리즘을 구현하는 방법이 잘못되었을 때에 발생합니다. 프로그래밍 언어의 문법을 충분히 이해하지 못한 경우도 포함됩니다. 2. 오타 개발자가 의도하지 않은 동작을 의미합니다. 작은 오타도 프로그램에 치명적인 오류를 발생시킬 수 있습니다. if(a==b) 를 if(a=b) 로 작성했을 경우 오류는 발생하진 않지만 전혀 다른 목적의 동작을 하게 됩니다.. 3. 실행 환경의 변화 컴퓨터, OS, 프로그래밍 언어 자체의 사양이 바뀌어 프로그램이 동작하지 않는 경우도 있습니다. 이러한.. 2022. 1. 7.
JavaScript ) 자주 사용되는 정규식 내가 편하려고 쓰는 글 특정 단어로 시작하는지 검사 ex) 'https://' 로 시작하는지 검사 const url = 'https://example.com'; /^https?:///.test(url); // ->true 특정 단어로 끝나는지 검사 ex) 'js'로 끝나는지 검사 const fileName = 'index.js' /js$/.test(fileName) // ->true 숫자로만 이루어진 문자열 여부 정규식 const targetNumber = '12345' /^\d+$/.test(targetNumber) // -> true 이메일 주소 정규식 const email = 'pji3504@naver.com' /.. 2022. 1. 7.
JavaScript) 예외처리란? 예외처리란? 예외는 간단하게 말해 오류가 난 상황을 얘기합니다. 일반적으로 프로그램에 오류가 발생하면 해당 프로그램은 강제적으로 종료됩니다. 하지만 자바스크립트 프로그램에서 발생한 오류는 굳이 프로그램을 종료하지 않더라도 오류만 적절하게 처리해준다면 프로그램을 계속 실행시킬 수 있습니다. 더 자세히 프로그램을 실행하면서 예상치 못한 오류가 발생할 수도 있고, 오류는 아니지만 특별한 대처가 필요한 예외적인 상황이 생길 수 도 있습니다. 예를 들어 파일이 존재하지 않거나 함수에 주어진 인수가 그 함수가 사용하려는 데이터 타입이 아닌 경우 등이 있습니다. 이 때 함수는 일반적으로 null 값을 반환해 오류를 알리는 방법을 사용하지만, 또 다른 방법으로 예외(Excepttion)를 던지는(Catch) 방법이 있.. 2022. 1. 7.
반응형