오늘은
학원에서 JavaScript에 대해 배우기 시작했습니다
이미 예습으로 한번 공부했던 언어라 수업을 듣는데에
확실히 수월했던 것 같습니다
학원 수업
번역기
자바스크립트, 파이썬 - 인터프리터 : 한줄 씩 번역
자바, C언어 - 컴파일러 : 전체 통 번역
변수 선언
Java
int num = 10;
char ch = 'A'
String name = "홍길동"
JavaScript : let + 변수이름 = 변수값
var num = 10;
var ch = 'A'
var name = "홍길동"
let num = 10;
let ch = 'A'
let name = "홍길동"
연산자
대입 : =
산술 : +, -, *, /, %
비교 : >, <. ==, != -> true/false
논리 : &&, ||
조건 : 조건 ? 참 : 거짓
DOM(Document Of Model)
출력 - alert()
입력 - prompt()
<JS>
조건문
if ~ else 문
switch ~ case 문
반복문
초기값
while(조건) {
실행문
증감값
}
for(초기값; 종료값; 증감값){
실행문
}
변수
let로 선언
상수(constant variable) = 변경되지 않는 진리나 사실, 법칙
const로 선언
선언한 값은 수정(재할당) 불가
isNaN(x) - Not a Number
어떤 변수가 NaN일때의 예외 처리
고객의 수 : 20
좌석 열 : 5
좌석 줄 : 4
나머지가 없는 경우 : 줄수 = 고객 / 열
나머지가 있는 경우 : 줄수 = 고객 / 열 + 1
for(줄수) {
for(열수) {
좌석번호
}
}
JavaScript 복습
<<리액트(React)>>
= 자바 스크립트의 UI 라이브러리
= 언어가 아님
=> 다른 라이브러리들도 함께 이용해야 효율이 극대화된다
=> Facebook(현Meta)이 개발한 오픈소스
=> React의 파생 기술은 React Native를 이용 -> 다양한 곳에서 작동하는 어플리케이션 개발 가능
<HTML>
= 요소들의 배치와 내용을 기술하는 언어
색이나 크기 등의 디자인 수행은 보통 하지 않음
<CSS>
= 색, 크기, 애니메이션 등을 정의하는 스타일링을 위한 언어
<JavaScript>
= 웹 사이트에 활력을 부여하는 언어
실질적인 작동을 담당
=> 웹 브라우저의 자바스크립트 엔진을 통해 실행된다
Chrome : V8 = 자바스크립트의 Runtime(실행환경)
* 변수 = 어떤 값에 이름을 붙여 부르고 싶을 때 사용
프로그램 사용 중 변수의 값은 바뀔 수 있다
=> 선언과 동시에 초기화 가능
= let 으로 선언
=> 규칙 - 변수명 -> 기호 사용 불가
=> 예외 = '_' 언더스코어, '$' 달러 -> 사용 가능
-> 숫자가 아닌 문자로 시작해야 한다
=> 중간이나 끝에 오는 것은 문제 없다
-> 예약어 사용 불가
=> 예약어 = JS가 쓰는 keyword
=> var = 새로운 변수를 중복해서 선언 가능
let = 새로운 변수를 선언할 때 기존에 있던 변수를 중복해서 선언 불가
* 상수 = const 로 선언
프로그램 사용 중 상수의 값은 바뀔 수 없다
=> 선언과 동시에 초기화 불가능
* 자료형 = 값을 유형에 따라 분류해놓은 것
- Primitive Data Type 원시타입 = Number(숫자, Infinity, NaN),
String("문자", '문자', `$(변수)`,
Boolean(true, false),
Undefined(변수를 선언하고 값을 할당하지 않은 경우),
Null(의도적으로 값이 없음을 지정)
한번에 하나의 값만 가질 수 있음
하나의 고정된 저장 공간 이용
- Non-Primitive Data Type 비원시타입 = Object, Array, Function
한번에 여러 개의 값을 가질 수 있음
여러 개의 고저오디지 않은 동적 공간 사용
* 형변환
parsInt() = 문자열을 입력받아 숫자로 형 변환을 해준다
* 자료형 비교 연산 = ' === / !== ' => 값과 타입 모두 비교
* typeof 연산자 => typeof 변수이름 = 변수의 자료형이 무엇인지 알려준다
* Null병합 연산자 = ??
null이나 undefined 값이 아닌 값을 선택한다
변수 = null ?? 값 => 값을 선택
Coding Test Practice
Description
문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다.
제한 사항
s는 길이 1 이상, 길이 8 이하인 문자열입니다.
s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.
// 1차 답
function solution(s) {
if((/^[0-9]+$/.test(s)){
return true;
}else {
return false;
}
}
// 2차 답
function solution(s) {
if((s.length === 4 || s.length === 6) && /^[0-9]+$/.test(s)){
return true;
}else {
return false;
}
}
test() = 정규표현식을 검사하는 메소드
^: 문자열의 시작을 나타냄
[0-9]: 0부터 9까지의 숫자 중 하나와 일치
+: 바로 앞의 패턴이 하나 이상 나타남을 나타냄
$: 문자열의 끝을 나타냄
/^[0-9]+$/
= 문자열이 0부터 9까지의 숫자로만 구성돼 있으면 일치하는 것,
다른 문자가 하나라도 있으면 일치하지 않는 것
2023. 11. 09 (목)
프로그래머 도전기 67일차 (1) | 2023.11.13 |
---|---|
프로그래머 도전기 66일차 (2) | 2023.11.12 |
프로그래머도전기 64일차 (0) | 2023.11.07 |
프로그래머 도전기 63일차 (0) | 2023.11.05 |
프로그래머 도전기 62일차 (2) | 2023.11.04 |