javascript+es6

[ javascript ] 01. 자바스크립트란 , 변수

변쌤(이젠강남) 2023. 9. 11. 17:59
반응형

# javascript 란

 

JavaScript는 원래 웹 페이지 요소와 상호 작용하도록 설계된 프로그래밍 언어입니다. 

 

  • ECMAScript는 핵심 기능을 제공합니다.
  • DOM( 문서 개체 모델)은 웹 페이지의 요소와 상호 작용하기 위한 인터페이스를 제공합니다.
  • BOM( 브라우저 개체 모델)은 웹 브라우저와 상호 작용하기 위한 브라우저 API를 제공합니다.

 

JavaScript를 사용하면 웹 페이지에 대화형 기능을 추가할 수 있습니다. 일반적으로 HTML 및 CSS와 함께 JavaScript를 사용하여 양식 확인, 대화형 지도 생성, 애니메이션 차트 표시 등 웹페이지 기능을 향상합니다.

 

웹 페이지가 로드되면, 즉 HTML과 CSS가 다운로드된 후 웹 브라우저의 JavaScript 엔진이 JavaScript 코드를 실행합니다. 그런 다음 JavaScript 코드는 HTML과 CSS를 수정하여 사용자 인터페이스를 동적으로 업데이트합니다.

최신 JavaScript 엔진은 일반적으로 성능 향상을 위해 JavaScript 코드를 바이트코드로 컴파일하는 JIT(Just-In-Time) 컴파일러로 구현됩니다.

 

바닐라 자바스크립트(Vanilla JS)는

외부의 라이브러리나 프레임워크를 이용하지 않는 순수 자바스크립트를 말하고. 라이브러리나 프레임워크를 사용하지 않기 때문에, 빠르고 호환성이 좋다는 게 특징입니다

 

클라이언트 측 : 

웹 페이지에서 JavaScript를 사용하면 웹 브라우저에서 실행됩니다. 이 경우 JavaScript는 클라이언트 측 언어로 작동합니다.

 

서버 측 : 

서버 측 환경은 Node.js입니다. 클라이언트 측 JavaScript와 달리 서버 측 JavaScript는 데이터베이스, 파일 시스템 등에 액세스 할 수 있는 서버에서 실행됩니다.

 

 

순위

 

https://survey.stackoverflow.co/2023/#technology

 

 

# 작성법

 

JavaScript는 HTML에서 읽고 사용합니다. HTML 파일의 script 태그 내에 기술해 읽어 들이는 방법과, 외부 파일로서 읽어 들이는 방법이 있습니다.

 

hHTML 파일의 script 태그에 작성하고 읽는 방법

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">    
    <title>Document</title>
    <script>
        // 코드 작성
    </script>
</head>
<body>
    <script>
        // 코드 작성
    </script>
</body>
</html>

 

 

외부 파일로 로드하는 방법

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">    
    <title>Document</title>
    <script src="js/main.js"></script>
</head>
<body>
 
  
</body>
</html>

 

 

# 출력

 

콘솔로 출력

console.log(20)

 

대화상자로 출력

alert(20)

 

# 주석

 

주석 처리는 JavaScript의 소스 코드를 일시적으로 비활성화하는 기능입니다.

개발 도중에 또 사용할 가능성이 있는 경우나, 프로그램의 설명을 쓸 때 등에 사용합니다.

// alert("한 줄 주석");

/*
여러 줄 주석처리 
alert("주석출력");
*/      

 

# 변수 

 

변수는 데이터를 일시적으로 저장하는 곳입니다. 비유하면 변수는 컵과 같은 것으로, 같은 컵 안에 「물」나 「콜라」등, 내용물을 넣어 바꾸어 사용할 수 있습니다. 그리고 프로그램에서 "컵의 내용을 마시는"라는 명령을 쓸 때 그 내용에 따라 "무를 마시는"나 "콜라를 마신다"와 같이 명령이 바뀝니다.

 

변수란  특정이름에 특정한 값을 담을 때

변수는 값을 참조하는 이름

 

변수 이름 규칙

변수 이름은 대소문자를 구분합니다. 즉, message와 는 Message서로 다른 변수입니다.
변수 이름에는 문자, 숫자, 밑줄, 달러 기호만 포함될 수 있으며 공백은 포함될 수 없습니다. 또한 변수 이름은 문자, 밑줄( _) 또는 달러 기호( $).
변수 이름에는 예약어를 사용할 수 없습니다.

 

 

ES6부터 

let 키워드와 const 키워드 사용

 

 

예) let 선언과 재할당 방법

let message;
message = "Hello";

let message = "Hello";

let message = "Hello", counter = 10;

let message , counter ;
message = "Hello";
counter = 10 ;

 

let : 재선 언 x , 재할당 가능 

const : 재선 언 , 재할당 불가능 

 

 

예) const :  선언과 동시에 초기화 

const message = "Hello";

 

 

- 변수에 저장할 수 있는 타입 

- 타입 확인 typeof

타입 설명
number 정수와 실수를 포함하는 모든 숫자 형태
string 문자열. 쌍따옴표나 홑따옴표의 쌍으로 감싼 모든 형식의 데이터
boolean 논리형. true(참) 혹은 false(거짓)
object 객체. 함수(Function), 배열 (Array), 날짜 (Date), 정규식 (RegExp) 등을 포함
null 임의로 비워 놓은 상태를 의미하는 특수한 값
undened 정의되지 않음. 선언만 하고 값이 할당되지 않은 상태

 

- 스코프 

 

var는 블록 내부에서 선언된 경우에도(예: 루프 또는 조건문) 선언된 전체 함수에서 액세스 할 수 있습니다.
let과 const로 선언된 변수는 블록 범위를 갖습니다  루프나 조건부 등 정의된 블록으로 제한됩니다.

블록 외부에서는 접근이 불가능합니다.

 

- 재할당 

 

let으로 선언된 변수는 재할당될 수 있습니다.
const로 선언된 변수는 const상수이므로 초기화되면 다시 할당할 수 없습니다.

그러나 변수가 객체나 배열에 대한 참조를 보유하는 경우 const객체나 배열의 속성이나 요소는 수정될 수 있습니다.

 

- 엄격모드 

최상위에 실행

"use strict";

 

 

- 형변환 

1. 문자형으로 String()

2. 숫자형으로 Number()

3. 불린 형으로 Boolean()

- 숫자 0, 빈 문자열, null, undefined, NaN과 같이 직관적으로도 “비어있다고” 느껴지는 값들은 false가 됩니다.

- 그외의 값은 true로 변환됩니다. 

 

Number mdn
String mdn
parseInt mdn
toString mdn
toFixed mdn
NaN mdn

 

 

# 불리언

불리언 형식은 true, false 두 가지이고 조건문은 모든 값을 불리언값으로 변환 

0, NaN, null, undefined, 빈문자열은 false로 변환 나머지는 모두 true로 변환 

 

 

# null과 undefined 

변수 선언하고 초기화하면 undefined이고 이런 경우는 보통 함수에서 자주 발생하고 함수를 호출하면서 매개변수를 제공하지 않으면 매개변수는 undefined 값을 갖는다 

null 값은 의도적인 값의 빈값을 선언할 때 사용 

 

 

 

 

 

 

 

 

 

반응형