{JS} JavaScript ?

nana·2022년 10월 29일
0

🟡 JS Deep Dive

목록 보기
1/6
post-thumbnail

역사

  • 1995년에 넷스케이프(Netscape)의 브렌던 아이크(Brendan Eich)에 의해 만들어짐
  • 처음에는 모카(Mocha)라는 이름으로 개발되었으나, 그 후에 라이브스크립트(LiveScript), 최종적으로는 자바스크립트(JavaScript)라는 이름으로 변경

자바스크립트(JavaScript)?

  • HTML의 요소 '내용', '속성', '스타일' 변경 가능

  • 자바스크립트(JavaScript)는 객체(object) 기반의 스크립트 언어
    (객체 지향형 프로그래밍과 함수형 프로그래밍을 모두 표현 가능)

  • HTML로는 웹의 내용을 작성하고, CSS로는 웹을 디자인하며, 자바스크립트로는 웹의 동작을 구현 (동적이며, 타입을 명시할 필요가 없는 인터프리터 언어)

  • 자바스크립트는 주로 웹 브라우저에서 사용되나, Node.js와 같은 프레임워크를 사용하면 서버 측 프로그래밍에서도 사용 가능

  • 현재 컴퓨터나 스마트폰 등에 포함된 대부분의 웹 브라우저에는 자바스크립트 인터프리터가 내장

인터프리터?

C언어와 같은 언어는 소스 파일을 작성한 후, 해당 파일을 컴파일(compile)하여 사용자가 실행할 수 있는 실행 파일(.exe)로 만들어 사용
하지만 인터프리터 언어는 이러한 컴파일 작업을 거치지 않고, 소스 코드를 바로 실행할 수 있는 언어를 의미
웹 브라우저에 포함된 자바스크립트 인터프리터가 소스 코드를 직접 해석하여 바로 실행


Java와 JavaScript 차이점

Java JavaScript
컴파일 언어 인터프리터 언어
타입 검사 엄격 타입 명시 안함
클래스(class) 기반의 객체 지향 프로토타입(prototype) 기반의 객체 지향

문법

1. 세미콜론(;)으로 구분

예제

let x = 10;
let result = x + 3;

2. 대/소문자 구분

예제

// 변수 javascript와 JavaScript는 서로 다른 두 개의 변수로 인식
let javascript = 10; 
let JavaScript = 20;
// 변수의 선언은 let 키워드로만 할 수 있으면 Let 동작안함
Let Script = 30; 

3. 리터럴 (literal)

: 직접 표현되는 값 자체를 의미

예제

12            // 숫자 리터럴
true          // 불리언 리터럴
'안녕'         // 문자열 리터럴
"JavaScript"  // 문자열 리터럴

4. 식별자 (identifier)

: 변수나 함수의 이름을 작성할 때 사용하는 이름
영문자(대소문자), 숫자, 언더스코어(_) 또는 달러($)만 사용 (숫자로 시작은 불가)

  • 작성방식
  1. Camel Case
  2. Underscore Case

예제

let firstVar = 10;           // Camel
function my_first_func {     // Underscore 
    let firstLocalVar = 20;  // Camel
}

5. 키워드(keyword)

: 미리 예약된 단어들을 키워드(keyword) 또는 예약어(reserved word)라고 함

예제

var firstVar = 10;      // var는 변수의 정의
function myFirstFunc {  // function은 함수의 정의
    var secondVar = 20; // var는 변수의 정의
}

6. 주석

  1. 한 줄 주석 : // 주석문
  2. 여러 줄 주석 : / 주석문 /

예제

let x = 10;
// 한 줄 주석 : 코드 내에 삽입된 일종의 설명문
/*
x = x + y;
여러 줄 주석 :
웹 브라우저의 동작에 영향 미치지 않음
*/
profile
✧ 중요한건 꺾이지 않는 마음 🔥 ᕙ(•ө•)ᕤ 🔥

0개의 댓글