자바스크립트는 웹 브라우저에서 사용하는 프로그래밍 언어로, 주로 Node.js (웹 서버 개발), React Naive (모바일 애플리케이션 개발), ELECTRON (데스크톱 애플리케이션 개발), MongoDB (데이터베이스 관리) 등의 역할을 합니다.
확인 문제
먼저 구글 크롬과 비주얼 스튜디오 코드를 설치합니다.
구글 크롬의 주소창에 about:blank를 입력하여 들어간 후 개발자 도구를 실행합니다. 콘솔창에 들어간후 console.log("Hello JavaScript...!") 를 입력
이렇게 나옵니다.
비주얼 스튜디오 코드에서 새 파일을 만들고 test.html 라고 이름을 저장합니다. html 페이지에서 ! 입력하고 enter 하여 기본적인 형태를 자동 완성 기능으로 만듭니다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
</head>
<body>
<script>
alert("Hello World")
</script>
</body>
</html>
script 태그와 alert() 코드를 추가한 후 예제가 저장되어 있는 폴더로 가서 test.html 파일을 더블클릭하여 실행합니다.
확인문제
1. 다음 명령을 입력했을 때 나오는 결과를 적어보세요.
"안녕하세요"
결과 : '안녕하세요'
console.log("안녕하세요")
결과 : 안녕하세요
"안녕하세요
결과 : Uncaught SyntaxError: Invalid or unexpected token
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title></title>
</head>
<body>
<script>
document.body.innerHTML = "<h1>안녕하세요</h1>"
</script>
</body>
</html>
결과 : 안녕하세요
표현식 : 자바스크립트에서 값을 만들어내는 간단한 코드
문장 끝에는 마침표를 찍듯이 세미콜론( ; ) 또는 줄바꿈을 넣어서 문장을 종결을 알린다.
식별자 규칙
- a (o)
- hello (o)
- 10times (x)
- _ (o)
- $ (o)
- 식별자
- 식별자 4. 메소드
- we are the wolrd (weAreTheWorld)
- create output (createOutput)
- create request createRequest)
- init server (initServer)
- init matrix (initMatrix)
- konsole.log('안녕하세요')
결과 : VM321:1 Uncaught ReferenceError: konsole is not defined
at :1:1- +++ 1 ++ 2 + 3
결과 : Uncaught SyntaxError: Invalid left-hand side expression in postfix operation- console.log)
결과 : Uncaught SyntaxError: Unexpected token ')'
자료형 : 자료의 종류
문자는 문자열 자료형, 숫자는 숫자 자료형, 참과 거짓은 불 자료형을 사용합니다.
+(문자열 연결 연산자) : 문자열
+(덧셈 연산자) : 숫자
&& : 불
-(빼기 연산자) : 숫자
*(곱하기 연산자) : 숫자
|| : 불
<script>
console.log("# 연습문제")
console.log("\\\\\\\\")
</script>
결과:
"# 연습문제
\\"
다음 프로그램의 실행 결과를 예측해 보세요.
<script>
console.log("안녕하세요"[1])
console.log("안녕하세요"[2])
console.log("안녕하세요"[3])
console.log("안녕하세요"[4])
</script>
결과:
녕
하
세
요
다음 프로그램의 실행 결과를 적어 보세요.
<script>
console.log(2+2-2*2/2*2)
console.log(2-2+2/2*2+2)
</script>
결과:
0
4
const : 상수 (변하지 않는 값을 저장하는 식별자)
let : 변수 (변하는 값을 저장하는 식별자)
선언 : 상수 또는 변수를 생성하는 것
할당 : 상수 또는 변수에 값을 넣는 것
다음 중 상수를 선언할 때 사용하는 키워드는 어떤 것인가요?
const
다음 중 값을 할당할 때 사용하는 연산자는 어떤 것인가요?
=
다음 프로그램 중에서 오류를 발생하는 것을 찾고, 어떤 오류가 발생하는지 적어보세요.
<script>
const r
r = 10
console.log(`넓이 = ${3.14 * r * r}`)
console.log(`둘레 = ${2 * 3.14 * r}`)
</script>
Uncaught SyntaxError: Missing initializer in const declaration (at test.html:10:15)Understand this error
<script>
let r
r = 10
console.log(`넓이 = ${3.14 * r * r}`)
console.log(`둘레 = ${2 * 3.14 * r}`)
</script>
넓이 = 314
test.html:14 둘레 = 62.800000000000004
원인 : 값을 중간에 바꾸기 위해서는 const 키워드가 아닌 let 키워드를 사용해야 하기 때문입니다.
<script>
const number=10;
console.log(++number)
console.log(number++)
console.log(++number)
console.log(number--)
</script>
11
11
13
13
prompt() : 사용자로부터 글자를 입력 받을 때 사용
자료형 변환 : 어떤 자료형의 값을 다른 자료형으로 변경하는 것
Number() : 숫자 자료형으로 변환
String() : 문자열 자료형으로 변환
Boolean() : 불 자료형으로 변환
confirm()
Number() : 숫자 자료형으로 변환합니다.
String() : 문자열 자료형으로 변환합니다.
Boolean() : 불 자료형으로 변환합니다.
<script>
/// 숫자를 입력받습니다.
const input = prompt("cm 단위의 숫자를 입력해주세요.");
/// 입력을 숫자로 변경하고 inch 단위로 변경합니다.
const cm = Number(input)
const inch = input*0.393701
/// 출력합니다.
alert(`${cm}cm는 ${inch}ich 입니다.`)
</script>
<script>
/// 숫자를 입력받습니다.
const input = prompt("원의 반지름을 입력해주세요.")
const r = Number(input)
/// 출력합니다.
const n = 3.14*r*r
const d = 2*3.14*r
alert(`원의 반지름: ${r}\n원의 넓이: ${n}\n원의 둘레: ${d}`)
</script>
<script>
/// 숫자를 입력받습니다.
const input = prompt("달러 단위의 금액을 입력해주세요.")
const dollar = Number(input)
/// 출력합니다.
const won = dollar*1207
alert(`달러: ${dollar}\n원화: ${won}`)
</script>
숫자 3개를 입력받고 최소값과 최대값을 출력하는 프로그램
숫자 2개를 입력받고 첫번 째 숫자가 두번 째 숫자의 약수인지 출력하는 프로그램
아 벨로그의 세계에 잘 오셧어요~^~^~^~^~^