JavaScript

    JavaScript ES6 - 템플릿 리터럴 , 객체 리터럴 , 구조분해 할당

    이번 포스팅에서는 JavaScript의 ES6 문법 중 템플릿 리터럴과 객체 리터럴에 대해 알아보고 더 나아가 구조분해 할당에 대해서도 조금 알아보도록 하겠다. 템플릿 리터럴 객체 리터럴 구조분해 할당 템플릿 리터럴은 ES6로 넘어오면서 도입된 새로운 문자열 표기법이다. ES6 이전에는 문자열 안에 변수를 사용해 값을 집어 넣고 싶은 경우 +연산자를 이용해 문자열과 변수를 연결해주었다. let name = "bitkunst" let aa = "안녕하세요 "+name+"입니다" console.log(aa) // output : 안녕하세요 bitkunst입니다. 하지만 ES6에서는 템플릿 리터럴을 사용하여 문자열 안에서 변수 호출이 가능해..

    JavaScript - DOM (2)

    저번 포스팅에서 DOM에 대해 알아보았고 간단한 JavaScript 코드를 통해 브라우저를 조작하는 것을 해보았다. 이번 포스팅에서는 script 외부연결과 window.onload , window.addEventListener("DOMContentLoaded", listener)에 대해 알아보도록 하자. script 외부연결 window.onload , window.addEventListener("DOMContentLoaded", listener) HTML 문서를 작성할 때 엘리먼트를 사용해 CSS 파일을 외부로부터 가져와서 사용하는 것과 마찬가지로 JavaScript 역시 외부에서 가져와서 사용이 가능하다. script 외부 연결이란 다시말해, HTML 문서의..

    JavaScript - DOM (1)

    이번 포스팅에서는 JavaScript의 DOM에 대해 알아보도록 하겠다. DOM은 문서객체모델(DOM, Document Object Model)을 일컫는 말로 XML이나 HTML 문서에 접근하기 위한 일종의 인터페이스이다. 해당 객체 모델은 문서 내의 모든 요소를 정의하고 각각의 요소에 접근하는 방법을 제공해 준다. 쉽게 말해 이나 같은 html 문서의 엘리먼트들을 JavaScript가 이용할 수 있는 객체로 만든 것을 문서 객체라 하는데 이러한 문서객체를 인식하는 방식이 DOM이라고 할 수 있다. DOM에 대해 조금 더 알아보고자 하는데 그 전에 window 객체에 대해 알아볼 필요가 있다. window 객체는 JavaScript의 최상위객체이자 전역객체이면서 모든 객체가 소속된 객..

    JavaScript - 콜백(callback)

    이번 포스팅에서는 콜백(callback)의 개념에 대해 알아보고자 한다. 콜백에 대해 설명하기에 앞서 함수를 정의하고 호출하는 등의 과정들이 어떤식으로 진행되는지에 대해 알고 넘어가야할 필요가 있다. 함수 정의 & 호출 콜백(callback) JavaScript에서 함수를 정의하고 호출하는 과정들을 세분화해서 작성해 본다면 다음과 같다. ▶ aa 함수 정의하기. function aa() { // 코드 블록 } ▶ aa 함수 호출하기. aa() ▶ aa 함수에 매개변수 num1과 num2를 만들기. ( 인자값을 받아줄 변수명으로 함수를 정의할 때 작성한다. ) function aa (num1, num2) { // 코드 블록 } ▶ aa 함수에서 num1과 num2를 ..

    JavaScript - 얕은복사 , 깊은복사

    이번 포스팅에서는 JavaScript만의 고유한 특징 중의 하나인 얕은복사(Shallow Copy)와 깊은복사(Deep Copy)의 개념에 대해 알아보도록 하겠다. 얕은복사와 깊은복사의 개념을 알아보기에 앞서 아래의 코드를 보면서 JavaScript에서 객체를 어떤식으로 인식하는지 살펴보자. console.log(1===1) console.log({}==={}) // 빈 객체와 빈 객체를 같다고 놓으면 false가 나온다. const a = {} const b = {} console.log(a===b) // false console.log([]===[]) // false (배열도 객체이기 때문이다) console.log( 1===1 )의 결과를 살펴보면 우리가 잘 알고 있는 것처럼 number의 값이 1..