
JavaScript JavaScript는 모든 브라우저에 내장되어 있다. 따로 설치할 필요가 없다. (모든 브라우저들은 HTML,CSS,JS 를 이해한다.) 브라우저는 html을 열고 html은 CSS와 JS를 가져오는 것이다. variable 이름 정할 때 공백을 사용하지 않는다 기본적으로 const 를 사용하고 값을 변경할 필요가 있을 때 let을 사용한다. null 은 아무것도 없는것이고 undefined 는 값이 정의되지 않은 것이다. array [ ] 기호를 사용해서 만든다. ( ex. const nonsense = [1, 2, 'hello', false] ) array 안 각각의 항목은 쉼표로 분리 push() : 값 추가 object object != list ( 리스트는 모든 값이 같은 의..

프로그래밍 언어에서 비슷한 데이터 종류들끼기 묶어서 한곳에 보관해 놓는 것일 자료구조라고 한다. ✔ object 와 자료구조의 차이점은? object 는 서로 연관된 특징과 행동을 묶어 놓은 것을 말한다. object 들을 묶어 놓는것을 자료구조라고 한다. 보통은 동일한 타입의 객체들만 담을 수만 있다. JS는 다양한 종류의 데이터를 담을 수 있지만 그렇게 사용하지 않는 것이 좋다. 배열이란? 배열은 위의 이미지와 같이 칸칸이 모여있는 자료구조를 말하고 인텍스가 지정되어 있다. 인텍스는 0부터 시작한다. 한 배열안에는 동일한 타입의 배열을 넣는 것이 중요! (JS는 데이터 타입이 상관없지만 섞어서 사용하는 것은 좋지 않다.) 1. Array Declaration (배열을 선언할 수 있는 방법) const..

Literals and Properties 변수 하나당 값을 하나만 담을 수 있다. 출력하고 싶다면 하나씩 적어줘야 하는 번거러움이 있다. 그래서 object 를 사용한다. object 만드는 방법 1. { } 를 사용해서 만들 수 있다. (ex. const obj1 = {} ) // 'object literal' syntax 2. new 키워드를 사용해 만들 수 있다. (ex. const obj2 = new Object();) // 'object constructor' syntax JS 에서는 클래스가 없어도 { } 를 이용해서 바로 object 를 만들 수 있다. JS 동적으로 타입이 Runtime 때 결정되는 언어이다. 그래서 뒤늦게 하나의 변수를 추가,삭제 할 수 있다. const person =..

class class person{ name; age; speak(); } 연관 있는 데이터를 묶어 놓는 컨테이너 같은 존재 persion클래스 안에 name과 age 같은 속성(field), speak()와 같은 행동(method)이 들어있다. → 변수들이나 함수들을 묶어 놓은 것을 class 라고 한다. 클래스 내에서도 내부적으로 보여지는 변수와 밖에서 보일 수 있는 변수를 나누어서 캡슐화라고 한다. 그리고 클래스를 이용해서 상속과 다형성이 일어날 수 있는데 이런 모든 것들이 가능한 것이 객체 지향 언어이다. Class - template : 클래스 자체에는 데이터가 들어있지 않고 틀(template)만 정의 - declare once : 한번만 선언 - no data in object : 클래스를 ..

Function - fundamental building block in the program : 프로그램에서 중요한 기본적인 빌딩 블록 - subprogram can be used multiple times : 서브 프로그램이라 불리며 여러번 재사용 가능 - performs a task or calculates a value : 작업을 수행하거나 값을 계산 - 하나의 함수는 한 가지 일만 하도록 작성해야 한다. - JS 에서 function은 object 이다. 그렇기 때문에 함수를 변수에 선언, 리턴, 파라미터로 전달 가능 function log(message) { console.log(message);// Hi } log('Hi'); Default Parameters (added in ES6) fu..

Use struct 정의되지 않은 변수 사용, 변수나 객체의 삭제, 함수 파라미터에 중복된 이름 등 비상식적인 것을 사전에 막아준다. // 1. Use strict // added in ES 5 // use this for Valina Javascript 'use strict'; js 상단에 'use strict'를 추가해 사용하면 된다. Variable(변수) : 변수는 변경될 수 있는 값을 얘기 한다. 값을 읽고 쓰는게 가능하다. let (added in ES6) let를 이용해 name변수를 정의하게 되면 메모리의 한 공간을 가리킬 수 있는 포인터가 생기게 된다. name이라는 변수가 가르키는 메모리 어딘가에 name의 값 저장할 수 있게 된다. 또한 name이라는 공간에 다른 값을 넣어서 저장할 ..

head 안에 script 추가 html을 parsing하다가 script태그를 만나면 parsing하는 것을 멈추고 필요한 js 파일을 다운받아서 실행한 후 다시 parsing을 하게 된다. 이렇게 하면 단점은 js 파일이 크고 인터넷이 느리다면 사용자가 페이지를 보기까지 시간이 많이 소요된다. 그래서 head에 script를 추가하는 것은 좋지 못하다. body 끝부분에 script 추가 html 파일의 parsing이 다 완료되고 page가 준비된 다음에 script 파일을 서버에서 다운받고 실행하게 된다. 이렇게 되면 사용자가 html을 빨리 받아올 수 있다는 장점은 있지만 단점은 만약에 페이지가 JavaScript에 굉장히 의존적이라면 사용자가 웹사이트의 전체적인 부분을 사용하기 위해서 scri..

백틱(backtick)은 키보트 물결(~)모양을 누르면 출력되는 ` 문자이다. 백틱(`)을 사용하여 문자열을 표현하는 것을 '템플릿 리터럴(template literals)'이라고 한다. 1. 문자열 내부에 변수를 표현해줄때 사용한다. 백틱을 사용안 했을 경우 const name = "Mike"; const meaage = 'My name is' + name; console.log(meaage); // My name is Mike 백틱을 사용했을 경우 const name = "Mike"; const meaage = `My name is ${name}`; console.log(meaage); // My name is Mike 2. 백틱을 사용해서 표현식을 넣을 수도 있다. const meaage2 = `M..