개발자가 되

13기 혼공단(js)

[혼공JS] 1주차

dltjdud 2025. 1. 11. 21:40

chat1, chat2

첫주 쉽지 않다..  J가 되.

용어 노트로 클래스카드를 만들었답.

끝까지 달려보잡..!

 

error massege

  • RefrenceError // 예외처리
    Uncaught RefenceError : ___ is not defined
    // ___부분을 잘못입력함.

 

  • SyntaxError // 구문오류
    Uncaught SyntaxError : Invalid or unexpected token
    // ""따옴표 안 닫힘.
    Uncaught SyntaxError : missing ) after argument list
    // ()괄호 안닫힘

표현식과 문자

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

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

 

키워드

자바스크립트에서 특정한 목적을 위해 사용하는 단어이다.

  • 문법 상 어떤 역할을 하는 단어들이라고 이해하면 편하다.
  • 이런 키워드들은 전부 예약어로 지정되어 있다.

 

식별자

  • 키워드를 사용X
  • 숫자로 시작X
  • 특수 문자는 _와 $만 O
  • 공백 문자는 포함X

클래스 : 대문자로 시작

변수, 인스턴스, 함수, 메소드 : 소문자로 시작

식별자 : 각 단어의 첫글자 대문자

 

식별자 종류

구분 단독으로 사용 다른 식별자와 사용
식별자 뒤에 괄호 없음 변수 속성
식별자 뒤에 괄호 있음 함수 메소드

 

주석

html 태그 주석

<!-- 주석 -->

 

자바스크립트 주석

// 주석

/* 주석 */

 

 

출력

  • google console

*간단한 연산식만 가능

> 10
10
> 10 + 10
20
> 10 * 10
100

 

  • 경고창에 출력
<script>
	alert('Hello JavaScript...!')
</script>
  • 콘솔에 출력
<script>
	console.log('Hello JavaScript...!')
</script>

 

 

chat2 자료와 변수

 

문자열 자료형

문자열 만들기

> '안녕하세요'
"안녕하세요" // 문자열이라 " "
> "안녕하세요"
"안녕하세요"

\n : 줄바꿈

\t : 탭

\\ : \

 

문자열 연산자

 

문자열 + 문자열 - > 문자열 연결 연산자

문장열[ 숫자 ] -> 문자 선택 연산자 // 숫자 = 문자 인덱스칸

 

문자열 길이 구하기

> "안녕하세요".length
5
> "".length
0 // 빈 문자열도 문자열

 

  • Uncaught SystaxError: Unexpected identifier // 식별자 위치가 이상함
    Uncaught SystaxError: Unexpected identifier
    식별자가 뜬금없는 곳에서 나옴

숫자 자료형

소수점 유무 관계X

 

숫자 연산자

연산자 설명
+ 더하기 연산자
- 빼기 연산자
* 곱하기 연산자
/ 나누기 연산자
% 나머지 연산자

 

boolean 자료형

boolean 만들기

true, false

 

비교 연산자

연산자 설명
=== 양쪽이 같다.
!== 양쪽이 다르다.
> 왼쪽이 더 크다.
< 오른쪽이 더 크다.
>= 왼쪽이 더 크거나 같다.
<= 오른쪽이 더 크거나 같다.

 

부정 연산자

> !true
false
> !false
true

 

boolean 논리합/ 논리곱 연산자

연산자 설명
&& 논리곱 연산자
|| 논리합 연산자
  • &&연산자
좌변 우변 결과
true false true
true false false
false true false
false true false
  • || 연산자
좌변 우변 결과
true true true
true false true
false true true
false false false

 

자료형 검사

typeof(자료)

> typeof('문자열')
"string"
> typeof(273)
"number"
> typeof(true)
"boolean"
> typeof '문자열'
"string"
> typeof 273
"number
> typeof 10 === 'number'
True

 

== / !== 연산자

> 1 == "1" // 자료형은 달라도 변환하면 같음
true
> false == "0" // false가 0으로, "0"으로 변환된 뒤 비교
true
> "" == [] // 빈 문자열은 false, 비어이는 배열 []는 false로 변환된 뒤 비교처리
true
> 0 == [] // 0은 false, 비어있는 배열 []는 false로 변환된 뒤에 비교합니다.
true

 

상수

상수 : 어떠한 자료에 이름 붙인다. '항상 같은 수'

선언 : 상수를 만드는 과정

const 이름 = 값

> const pi = 3.141592 
undefind
> pi
3.141592

> const r = 10
undefind

> 2 * pi * r // 반지름으로 원의 둘레
62.83184
> pi * r * r // 반지름으로 원의 넓이
314.1592

 

  • Identifier has already declared // 같은 이름으로 상수 한 번 더 선언 함.
    Uncaught SyntaxError: Identifier 'name' has already been declared
    'name' 이 두번 선언 되었음
  • Missing initializer in const declaration // 상수의 값을 선언할 때 지정 안함
    Uncaught SyntaxError: Missing initializer in const declaration
    상수 선언 할 때 값 지정 안함 
  • Assignment to constant variable // 선언된 상수의 값을 바꿀 수 없음
    TypeError: Assignment to constant variable.
    선언된 상수 값을 또 변경 했음

 

변수

let 이름 = 값

> let pi = 3.141592 
undefind
> pi
3.141592

> let r = 10
undefind

> 2 * pi * r // 반지름으로 원의 둘레
62.83184
> pi * r * r // 반지름으로 원의 넓이
314.1592

변수 의 값을 변경

변수 = 값

> let g = 9.8 // 중력 가속도
undefined
> let m = 10 // 질량
undefined
> m * g // 힘
98

> g1 = 9.80665 // 변수 값 변경
9.80665

 

  • ldentifier has already been declared // 변수는 한 파일에서 한 번만 선언 할 수 있음
    Uncaught SyntaxError: Idenrifier 'name' has already been declared
    같은 이름으로 변수 또 선언

변수에 적용할 수 있는 연산자

복합 대입 연산자

복합 대입 연산자 설명 사용 예 의미
+= 기존 변수의 값에 값을 더합니다. a += 1 a = a+1
-= 기본 변수의 값에 값을 뺍니다. a -= 1 a = a-1
*= 기본 변수의 값에 값을 곱합니다. a *= 1 a = a*1
/= 기본 변수의 값에 값을 나눕니다. a /= 1 a = a/1
%= 기본 변수의 값에 나머지를 구합니다. a %= 1 a = a%1

 

<script>
	// 변수를 선언합니다.
    let list = ''
    
    // 연산자를 사용합니다.
    list += '<ul>'
    list += '	<li>Hello</li>'
    list += '	<li>JavaScript..!</li>'
    list += '</ul>'
    
    // 문서에 출력합니다.
    document.write(list)
    // 결과
	// Hello
	// JavaScript..!
</script>

 

증감 연산자

증감 연산자 설명
변수++ 기존의 변수 값에 1을 더합니다(후위).
++ 변수 기존의 변수 값에 1을 더합니다(전위).
변수-- 기존의 변수 값에 1을 뺍니다(후위) .
--변수 기존의 변수 값에 1을 뺍니다(전위).

 

Undefined 자료형

// 상수와 변수로 선언하지 않은 식별자
> typeof(abc)
"undefined"

> typeof(그냥식별자)
"undefined"

// 값이 없는 변수
> let a
undefined

> typeof(a)
"undefined"

 

문자열 입력

 

prompt(메시지 문자열, 기본 입력 문자열)

<html>
<head>
    <title>prompt() 함수 매개변수의 역할</title>
</head>
<body>
    <script>
        // 상수를 선언합니다.
        const input = prompt('message', '_default')

        // 출력합니다.
        alert(input)
    </script>
</head>
</html>

 

boolean 입력

confirm(메세지 문자열)

<html>
<head>
    <title>confirm() 함수의 사용</title>
</head>
<body>
    <script>
        // 상수를 선언합니다.
        const input = confirm('수락하시겠습니까?')

        // 출력합니다.
        alert(input)
    </script>
</head>
</html>

 

숫자 자료형으로 변환하기

Number(자료)

> Number("273")
273
> typeof(Number("273"))
"number" // 자료형 숫자

> Number("273")
NaN // 값은 숫자X
> typeof(Number("273")
"number" // 자료형 숫자

> Number(true)
1
> Number(flase)
0

 

문자열 자료형으로 변환하기

String(자료)

> String(52.273) // 슷자 자료형이 문자열 자료형으로 변환됩니다.
"52.723"
> Strind(true) // boolean 자료형이 문자열 자료형으로 변환합니다.
"true"
> String(flase)
"flase"

 

Boolean 자료형으로 변환하기

Boolean(자료)

> Boolean(0)
false

> Booleasn(NaN)
false

> Boolean("")
false

> Boolean(null)
false

> let 변수
undefined
> Boolean(변수)
false

 

 

기본 미션

p. 54의 <파일 만들고 저장해 실행하기>에서 'Hello World' 출력하기

 

선택미션

Ch.01(01-1) 확인 문제 1번 상세하게 적고 인증하기

  1. 구글 = 검색, 구글 맵, G메일, 번역, 클래스룸, 구글 드라이브, 등..
  2. 인스타그램 = 이미지 및 동영상 업로드 기능, 스토리 기능,  릴스, 무한 스크롤 피드, DM(다이렉트 메시지) 및 소셜 기능, 등..
  3. notion = 페이지 생성 및 편집, 데이터베이스 기능, 템플릿 지원, 협업 및 공유 기능, 다른 도구와의 통합, 등..
  4. 네이버 = 검색 포털 서비스, 네이버 지도, 네이버 메일, 네이버 블로그 및 카페, 네이버 페이(Naver Pay), 등..
  5. Microsoft Edge = 웹 탐색 및 검색, 컬렉션 기능, 탭 관리, 읽기 모드 및 음성 읽기, 보안 및 개인정보 보호, 등..

'13기 혼공단(js)' 카테고리의 다른 글

[혼공JS] 5주차  (1) 2025.02.16
[혼공JS] 4주차  (0) 2025.02.09
[혼공JS] 3주차  (0) 2025.01.24
[혼공JS] 2주차  (0) 2025.01.19