본문 바로가기

전체 글

(124)
[JavaScript] window객체(setTimeout) window 객체window에는 많은 메서드들이 존재하며, window는 default의 개념이므로 생략할 수 있다.12window.setTimeout();setTimeout();cs setTimeout 활용setTimeout은 비동기로 실행되어 동기적인 다른 실행이 끝나야 실행된다.자바스크립트는 함수를 인자로 받을 수 있으며, 함수를 반환할 수도 있다.아래의 코드는 인자로 함수를 받고 있으며, 보통 나중에 실행되는 함수를 콜백함수라고 한다.123456789101112function run() { console.log("start"); setTimeout(function() { var msg = "hello"; console.log(msg); console.log("run ....ing"); }, 100..
[JavaScript] 함수호출 스택 함수 호출run이 호출되고, 그 다음에 printName이 호출된다. 12345678910function printName(firstName) { var myName = "hh_lin"; return myName + " " + firstName;} function run(firstName) { var firstName = firstName || "Kim"; var result = printName(firstName); console.log(result);}Colored by Color Scriptercs Call Stack1234567891011function foo(b){ var a = 5; return a * b + 10;} function bar(x){ var y = 3; return foo(x *..
[JavaScript] 함수 함수 선언함수는 여러 개의 인자를 받아서, 그 결과를 출력한다.파라미터의 개수와 인자의 개수가 일치하지 않아도 오류가 나지 않는다.파라미터가 1개일 때, 인자의 개수가 0개라면 파라미터는 undefined라는 값을 가지게 된다. 1234function printName(firstName) { var myName = "hh_lin"; return myName + " " + firstName;}Colored by Color Scriptercs 함수 표현함수는 아래와 같이 함수 표현식으로 쓸 수도 있다.이렇게 표현하게 되면, 함수 선언문과는 달리 선언과 호출순서에 따라서 정상적으로 함수가 실행되지 않을 수 있다.12345678function printName(firstName) { var inner = fun..
[JavaScript] 비교/반복/문자열 비교문if, else if, else를 통해서 다양한 비교문을 사용할 수 있다.123456789if (condition_1) { statement_1;} else if (condition_2) { statement_2;} else if (condition_n) { statement_n;} else { statement_last;} cs 변수 b의 경우 boolean값 false가 아닌 Boolean 객체에 해당하므로 true를 의미한다.12var b = new Boolean(false);if (b) // this condition evaluates to truecs ※ false로 취급되는 값falseundefinednull0NaN""(empty string) 분기문 - switch주어진 값과 일치하는 ..
[JavaScript] 변수/연산자/타입 JavaScript의 버전자바스크립트의 버전은 ECMAScript(줄여서 ES)의 버전에 따라서 결정되고, 이를 자바스크립트 실행 엔진이 반영한다.ES5, ES6(ES2015)... 이런식으로 버전을 일컫는다.2018년을 중심으로 ES6를 지원하는 브라우저가 많아서 몇년간 ES6문법이 표준으로 쓰이는 상황이다.ES6는 ES5문법을 포함하고 있어서 하위호환성 문제가 없다. 다만 feature별로 지원하지 않는 브라우저가 있을 수 있어 조심해야 한다. 변수변수는 var, let, const로 선언할 수 있다. 어떤 것을 사용하는 가에 의해서 scope라는 변수의 유효범위가 달라진다.ES6이전에는 var만을 사용해서 변수를 선언할 수 있었다. 컴파일 단계가 없는 자바스크립트의 type은 실행단계에서 결정된다...
[WEB] Request, Response 요청과 응답웹 브라우저에 URL을 입력하고 엔터를 누르게 되면, 웹 브라우저는 도메인과 포트번호를 이용해서 서버에 접속하며, 요청 정보를 서버에 전송한다.WAS는 웹 브라우저로부터 Servlet 요청을 받으면, 다음과 같은 일을 한다.요청할 때 가지고 있는 정보를 HttpServletRequest 객체를 생성하여 저장.웹 브라우저에게 응답을 보낼 때 사용하기 위하여 HttpServletResponse 객체를 생성.생성된 HttpServletRequest, HttpServletResponse 객체를 서블릿에게 전달. HttpServletRequest클라이언트가 서버에게 보낸 요청을 추상화한 객체로, HTTP 프로토콜의 request 정보를 서블릿에게 전달하기 위한 목적으로 사용한다.헤더정보, 파라미터, 쿠..
[WEB] Servlet 생명주기 Servlet의 생명주기WAS는 서블릿 요청을 받으면 해당 서블릿이 메모리에 있는지 확인한다.메모리에 없다면, 해당 서블릿 클래스를 메모리에 올리고, init() 메서드를 실행한다.메모리에 있다면, service() 메서드를 실행한다.WAS가 종료되거나, 웹 어플리케이션이 새롭게 갱신될 경우 destroy() 메서드가 실행된다. 참고 코드1234567891011121314151617181920@WebServlet("/LifeCycleServlet")public class LifeCycleServlet extends HttpServlet { private static final long serialVersionUID = 1L; public LifeCycleServlet() { System.out.print..
[WEB] Servlet Java Web ApplicationWAS에 설치되어 동작하는 어플리케이션. 자바 웹 어플리케이션에는 HTML, CSS, 이미지, Java로 작성된 Class(Servlet, package, interface 등), 각종 설정 파일 등이 포함된다. Servlet이란?Java Web Application의 구성요소 중 동적인 처리를 하는 프로그램의 역할을 한다.WAS에서 동작하는 Java Class로 HttpServlet을 상속받아야 한다.웹 페이지를 구성하는 화면(HTML)은 JSP로 표현하고, 복잡한 프로그래밍은 Servlet으로 구현한다.URL요청을 처리하는 프로그램이다. Servlet 작성방법1. Servlet 3.0 이상web.xml 파일을 사용하지 않고, Java Annotation을 사용한다...
[WEB] Apache Tomcat Apache Tomcat이란?아파치 소프트웨어 재단(Apache Software Foundation, ASF)에서 개발한 세계에서 가장 많이 사용되는 WAS(Web Application Server)이다.컴퓨터에 운영체제를 설치해야만 컴퓨터를 사용할 수 있는 것처럼, Java를 이용하여 작성된 웹 어플리케이션은 WAS가 있어야만 실행할 수 있다.오픈소스 소프트웨어로 누구나 무료로 사용할 수 있다. Apache Tomcat 다운로드 및 실행http://tomcat.apache.org의 Download 탭에서 원하는 버전을 다운로드 받을 수 있다.설치 폴더 아래에 있는 bin 폴더를 보면 start.bat의 윈도우용 배치파일과 start.sh의 쉘스크립트 파일을 확인할 수 있다.Windows의 경우 .bat..
[JAVA] Eclipse & Java Code Conventions Eclipse란?IBM에서 웹 스피어 스튜디오 애플리케이션 디벨로퍼(WebSpheare Studio Application Developer)란 이름으로 JAVA언어를 이용하여 개발되었던 것인데, 핵심 부분을 오픈 소스로 공개하여 지금의 이클립스로 발전하게 되었다.이클립스는 윈도우, 맥, 리눅스 등 다양한 운영체제에서 동작하며, JAVA를 비롯한 다양한 프로그래밍 언어를 개발할 수 있는 통합 개발 환경( Integrated Development Environment, IDE)이라고 말할 수 있다.통합 개발 환경이란 코딩, 디버그, 컴파일, 배포 등 프로그램 개발에 관련된 모든 작업을 하나의 프로그램 안에서 처리할 수 있도록 환경을 제공하는 소프트웨어이다.이클립스는 플러그인 구조로 쉽게 기능을 추가할 수 있..