JS_02_기본 문법

한빛미디어 ‘모던 웹을 위한 JavaScript jQuery 입문’ 책으로 공부한 내용입니다.

1. 기본 문법

표현식 : 값을 만들어내는 간단한 코드

123
1 + 2 + 3
'String'

문장 : 하나 이상의 표현식이 모인 것

1 + 2 + 3;
var str = 'String'

키워드 : JavaScript에서 정해진 특별한 의미가 있는 단어

true / false / if / else / for / continue / break / switch / case / default
try / catch / finally / instanceof / typeof / do / while / throw / in
new / void / null / var / return / function / delete / this / with

식별자 : 변수명 or 함수명

  • 키워드 사용 금지
  • 숫자로 시작 금지
  • _ 와 $만 허용
  • 공백 사용 금지
  1. 생성자 함수의 이름은 항상 대문자로 시작
  2. 변수와 인스턴스, 함수, 메서드의 이름은 항상 소문자로 시작
  3. 여러 단어로 이루어진 식별자는 각 단어의 첫 글자를 대문자로
구분단독다른 식별자와
괄호 없음변수속성
괄호 있음함수메서드

주석

// 주석입니다1
/*
 * 주석입니다2
 */

2. 출력 & 자료형

문자열 자료형

alert('String' + "String" + "\"String\"" + "\n");

숫자 자료형

alert(123  % 7 + 2.5 - 6 * 0);

불 자료형

alert(30 > 20 > 10);   // false  (30 > 20) 이 true라서 1로 변환 -> (1 > 10) 은 false

형변환

var str = 123 + '4';
var num = 123 * '4';
var str = String(123);
var num = Number('123');
var bool = Boolean(undefined);    // false

일치 연산자

alert('123' == 123);    // true 자동 형변환
alert('123' === 123);   // false 자료형이 다름

3. 변수

var stringVar = 'String';
var numberVar = 123;
var booleanVar = true;
var functionVar = function() {};
var ojbectVar = {};

4. undefined

  • 선언 했지만 초기화하지 않은 함수

5. 입력

var input = prompt('Message', 'str');   // 문자열 자료형 입력
var input = confirm('수락하시겠습니까?'); // boolean 자료형 입력

6. 추가

템플릿 문자열

alert(`표현식 123 + 4의 값은 ${123 + 4}입니다.`)   // 표현식 123 + 4의 값은 127입니다.

let & const

키워드구분선언 위치재선언
var변수전역가능
let변수해당불가능
const상수해당불가능
const constant = 123;   // 값 설정 안하면 오류
{
  let variable = 123;
}
{
  alert(variable);      // error
}

비동기 함수 문제

<script>
  for(var i=0; i<3; i++){
    setTimeout(() => {
      alert(i);
    }, 1000 * i);
  }
</script>
  • 1초 후에 i는 전역 scope에 3으로 존재하기 때문에 [ 3 / 3 / 3 ] 으로 출력
<script>
  for(var i=0; i<3; i++){
    ((i) => {
      setTimeout(() => {
        alert(i);
      }, 1000 * i);
    })
  }
  • 함수로 한 번 감싸고 사용할 변수를 전달하는 방법을 사용

```JavaScript

JS_01_개요

한빛미디어 ‘모던 웹을 위한 JavaScript jQuery 입문’ 책으로 공부한 내용입니다.

1. 자바 스크립트의 활용

1. 웹 애플리케이션

  • 웹 문서의 내용을 동적으로 변경하거나 이벤트를 처리
  • Node.js로 웹 서버 애플리케이션도 개발 가능
    • 간단한 모듈만 제공하기 때문에 데이터 처리와 예외 처리가 복잡
    • 하지만 빠름 빠름 빠름

2. 모바일 애플리케이션 개발

  • 일반적으로 안드로이드-자바 , 아이폰-스위프트 언어를 사용하여 앱 개발 네이티브 애플리케이션
  • 자바스크립트를 사용하면 모든 스마트폰에서 동작 가능 하이브리드 애플리케이션 느림
  • 페이스북에서 자바스크립트로 네이티브 앱을 개발할 수 있는 React Native

3. 데스크톱 애플리케이션 개발

  • GitHub에서 자바스크립트 개발 전용 텍스트 에디터 아톰 배포
  • 일렉트론 모듈을 공개하면서 다른 앱들도 개발
    • Atom, Slack, Visual Studio Code …

4. 게임 개발

  • 초기에는 모든 운영체제에서 실행할 수 있는 플랫폼인 플래시 사용 (ex. 애니팡-액션스크립트)
  • 유니티는 모노 플랫폼을 사용해 유니티 스크립트, C#을 사용해 게임 개발이 가능
  • 소규모 게임은 Node.js 활용

5. 데이터베이스 관리

  • MongoDB는 자바스크립트를 활용하는 NoSQL DB

Pagination