자바스크립트
자바스크립트(JavaScript)는 객체(object) 기반의 스크립트 언어입니다.
HTML로는 웹의 내용을 작성하고, CSS로는 웹을 디자인하며, 자바스크립트로는 웹의 동작을 구현할 수 있습니다.

자바스크립트를 공부해야하는 이유는 아래와 같습니다. 

JavaScript는 모든 웹 개발자가 배워야 하는 3가지 언어 중 하나입니다.
1. 웹 페이지의 내용을 정의하는 HTML
2. 웹 페이지 레이아웃을 지정하는 CSS
3. 웹 페이지의 동작을 프로그래밍하는 JavaScript

자바스크립트를 처음 사용하기 위해 프로그램을 설치할 필요가 없습니다.

자바스크립트는 주로 웹 브라우저에서 사용되나, Node.js와 같은 프레임워크를 사용하면 서버 측 프로그래밍에서도 사용할 수 있습니다.
현재 컴퓨터나 스마트폰 등에 포함된 대부분의 웹 브라우저에는 자바스크립트 인터프리터가 내장되어 있습니다.

JavaScript Can Change HTML Content

자바스크립트를 사용하여 웹 프로그래밍에서 할 수 있는 일은 다음과 같이 매우 다양합니다.
 
1. 자바스크립트는 HTML의 '내용'을 변경할수 있습니다
2. 자바스크립트는 HTML의 '속성'을 변경할수 있습니다.
3. 자바스크립트는 HTML의 '스타일'을 변경할수 있습니다.

아래 예제는 HTML element가 (id = "demo")를 "찾고" element 내용을 (innerHTML)를 "Hello JavaScript"로 변경합니다.

자바스크립트는 <script> 태그 안에서 작동됩니다.

JavaScript Functions and Events

Function: 자바스크립트가 실행하는 명령

Event: 함수 실행으로 발생한 결과

External JavaScript

외부 js 파일에 자바스크립트 코드를 저장하고 불러와서 사용할 수 있습니다.

다만, script src="파일경로+파일명" 을 명시해야합니다. 

 

JavaScript Output

자바스크립트 출력
자바스크립트는 여러 방법을 통해 결과물을 HTML 페이지에 출력할 수 있습니다.
자바스크립트에서 사용할 수 있는 출력 방법은 다음과 같습니다.
 
1. window.alert() 메소드 : 윈도우 alert 박스를 나타냄
2. HTML DOM 요소를 이용한 innerHTML 프로퍼티: 원하는 특정 HTML 요소를 지정하여 그 값을 변경
3. document.write() 메소드 : HTML 결과물을 바꾸는것
4. console.log() 메소드: 콘솔 로그를 나타낸다.

JavaScript Keywords

KeywordDescription

break Terminates a switch or a loop
continue Jumps out of a loop and starts at the top
debugger Stops the execution of JavaScript, and calls (if available) the debugging function
do ... while Executes a block of statements, and repeats the block, while a condition is true
for Marks a block of statements to be executed, as long as a condition is true
function Declares a function (함수명 정의)
if ... else Marks a block of statements to be executed, depending on a condition
return Exits a function
switch Marks a block of statements to be executed, depending on different cases
try ... catch Implements error handling to a block of statements
var Declares a variable (변수 선언)

JavaScript is Case Sensitive

자바스크립트는 대소문자 구분한다.

JavaScript and Camel Case

식별자 작성 방식

자바스크립트에서는 식별자를 작성할 때 다음과 같은 작성 방식을 사용할 수 있습니다.

 

1. Camel Case 방식

2. Underscore Case 방식

 

Camel Case 방식이란 식별자가 여러 단어로 이루어질 경우에 첫 번째 단어는 모두 소문자로 작성하고, 그다음 단어부터는 첫 문자만 대문자로 작성하는 방식입니다.

Underscore Case 방식은 식별자를 이루는 단어들을 소문자로만 작성하고, 그 단어들은 언더스코어(_)로 연결하는 방식입니다.

예제
var firstVar = 10;           // Camel Case 방식
function my_first_func {     // Underscore Case 방식
    var firstLocalVar = 20;  // Camel Case 방식
}

JavaScript Data Types

var 타입은 모든 데이터 타입을 contain할 수 있습니다.

JavaScript Arithmetic

number + number = number 

string + string = string -->  var x = "John" + " " + "Doe"; ==> "John Doe"

string + number+ number = string  -->  var x = "5" + 2 + 3;  ==> "523" (string이 먼저 나오면 나머지 숫자들도 string으로 간주)

number + number+ string = string --> var x = 2 + 3 + "5"; ==> "55" (number가 먼저 나오면 숫자부분들만 덧셈을 하고 string은 숫자뒤에 concatenate해줌)

Primitive Data

typeof 명령어는 데이터타입을 반환한다. 

(주의점: array 배열은 object로 여겨져서 object로 반환이된다. )

JavaScript String Methods

String Length

Finding a String in a String

use indexOf()

Searching for a String in a String

use search()

Extracting String Parts

string을 잘라내는 방법은 3가지가 있습니다. (아래 함수에서 첫 index 와 마지막 index 를 지정하여 해당 범위의 string 추출)

Replacing String Content

replace("바꾸고자 하는 텍스트", "새로운 텍스트") 함수는 특정 텍스트를 새로운 텍스트로 교체할 수 있습니다. 

The charAt() Method

Converting a String to an Array

특정 string을 split하여 배열로 저장할 수 있습니다.

JavaScript Array Methods

stack과 같이, array에 pop(), push() 에 할 수 있고, 나머지는 아는 내용이다. 

 

다음 메소드는 원본 배열을 직접 변경하는 메소드입니다.

 

1. push()

2. pop()

3. shift() : shift() 메소드는 pop() 메소드와는 달리 배열의 가장 마지막 요소가 아닌 첫 요소를 제거하고, 그 제거된 요소를 반환합니다. 따라서 shift() 메소드도 실행할 때마다 배열의 길이가 1씩 줄어들게 됩니다.

4. unshift() : unshift() 메소드는 하나 이상의 요소를 배열의 가장 앞에 추가합니다.

원본 배열은 추가한 요소의 수만큼 길이(length)가 늘어나게 되며, 요소를 성공적으로 추가하면 배열의 총 길이를 반환합니다.

5. reverse() : reverse() 메소드는 배열 요소의 순서를 전부 반대로 교체합니다.

즉, 가장 앞에 있던 요소가 가장 뒤에 위치하며, 가장 뒤에 있던 요소는 가장 앞에 위치하게 됩니다.

6. sort() : sort() 메소드는 해당 배열의 배열 요소들을 알파벳 순서에 따라 정렬합니다.

이 메소드는 배열 요소를 모두 문자열로 보고 정렬하므로, 숫자나 불리언과 같은 타입의 요소들은 잘못 정렬될 수도 있습니다.

7. splice() : splice() 메소드는 기존의 배열 요소를 제거하거나 새로운 배열 요소를 추가하여 배열의 내용을 변경합니다.

 

첫 번째 인수는 새로운 요소가 삽입될 위치의 인덱스이며, 두 번째 인수는 제거할 요소의 개수입니다.

그 이후의 인수들은 모두 배열 요소로서 지정된 인덱스부터 차례대로 삽입됩니다.

이 메소드는 배열에서 제거된 요소를 배열의 형태로 반환하며, 아무 요소도 제거되지 않았으면 빈 배열을 반환합니다.

+ Recent posts