220922 AWS, MySQL Workbench DB 접속 정보, 자바스크립트
DB 접속 정보
모든 데이터베이스는 접속하기 위해서 다음과 같은 정보가 순차적으로 요구된다.
- 데이터베이스 프로토콜 + 서버 주소(IP) + 포트 번호
- 데이터베이스 종류
- 데이터베이스 이름
- 데이터베이스 사용자/스키마 계정 정보
AWS 데이터베이스 - MySQL Workbench 연결
- MySQL Workbench 실행
- MySQL Connections 추가
- Hostname 에 엔드포인트 입력
- Username 에 사용자 이름 입력
- Password 는 DB 암호
- 위 세가지 정보는 라이트세일 AWS 관리 페이지 - 데이터베이스에서 확인
- Test Connection 을 눌러서 ‘Successfully made the MySQL connection’ 이 뜨는지 확인
- MySQL Workbench 에서 해당 데이터베이스 관리
자바스크립트
변수 수정하기
let change = ‘바꿔 봐’;
< undefined
change 라는 변수를 선언하고 초기화했다.
change =’바꿨다’;
< “바꿨다”
변수명에 대입 연산자를 사용해서 새로운 값을 입력. 이미 선언했기 때문에 다시 let 을 쓰면 안된다.
let change = '바꿔 봐';
< undefined
change = '바꿨다';
< "바꿨다"
변수에 넣은 값 비우기
undefined 를 대입하거나 null 을 대입한다.
change = undefined;
< nudefined
change = null;
< null
둘다 똑같지만, null 을 쓰기 권장.
다른 사람이 변수를 확인했을때 null 은 누군가가 의도가 있어서 빈 값을 넣은 것이라고 생각.
undefined 가 뜨면, 남이 바꾼건지 기본값이 없어서 undefined 가 뜬건지 모르기 때문.
변수 활용하기
변수를 다른 변수에 대입
let string2 = string;
< undefined
number = number + 3
< 8
number += 3
< 8
대입 연산자를 축약할 수 있다.
let string1 = '엄청 긴 문자열'
console.log(string1);
console.log(string1);
console.log(string1);
반복되는 작업은 웬만하면 컴퓨터한테 맡길 수 있도록 해야한다.
상수(const)와 var
상수 만들기
let 외에도 const, var 가 있다.
const 는 상수 (constant)의 줄임말이다. 변하지 않는 수이다.
const 로 선언했는데 바꾸려고 하면 에러가 뜬다.
const value2;
< Uncaught SyntaxError: Identifier 'value' has already been declared.
값을 안넣고 선언하면 에러가 난다. 값을 바꿀 수 없기 때문이다.
var
옛날에는 사용했지만 요즘에는 잘 사용하지 않는다. variable . 똑같이 변수로 저장할 수 있다.
다시 선언할 수 있다. (let에서 고침)
var undefined = 'defined';
< undefined
var Infinity = 0;
< undefined
var let = 'const'
< undefined
undefined, Infinity, let 처럼 의미가 있는 것들도 변수로 쓸 수 있다. 문제가 생기므로 let 에서 고침
var 로 짜여진 코드를 이해하기 위해서 알아두자.
조건문(if)
if (로그인한 사용자)
정보를 보여준다;
if 뒤에 나오는 소괄호 안에 조건(식)을 넣고, 다음 줄에 동작(문)을 넣는다.
들여쓰기는 중요하지 않지만 보기 좋게 띄어 쓴다.
if 조건문의 기본 형식
if (조건식)
동작문;
조건문은 조건식과 동작문으로 구분된다. 조건식이 참인 값이면 내부의 동작문이 실행되고, 거짓인 값이면 동작문이 실행되지 않는다.
동작문이 하나 이상이면 동작문들을 중괄호로 감싼다. if 와 (, ) 와 { 사이는 띄어도 되고 띄우지 않아도 된다.
if (조건식) {
동작문1;
동작문2;
동작문3;
}
If (true) {
console.log('Hello, if!');
}
let condition = true;
if (condition) {
console.log('Hello, if!');
}
!! 형변환 했을때의 값을 참고해서 true, false 가 아닌 값을 넣을 수도 있다.
else, else if, switch
else 를 사용해 두 방향으로 분기하기
if-else 문의 기본 형식
if (조건식) { // 조건식이 참인 값일 때 실행
동작문;
} else { // 조건식이 거짓인 값일 때 실행
동작문;
}
조건식이 거짓일 때 value 를 포도로 만들기
let value = '사과';
let condition = false; // else 문이 실행됨
if (condition) {
value = '바나나';
} else {
value = '포도';
}
value = '포도';
else if 를 사용해 여러 방향으로 분기하기
if-else if-else 문의 기본 형식
if (조건식) {
동작문;
} else if (조건식) {
동작문;
} else {
동작문;
}
else if 문은 if 문과 else 문(생략 가능) 사이에 원하는 만큼 넣을 수 있다.
const score = 75;
if (score >= 90) { // 90점 이상
console.log('A+');
} else if (score >= 80) { // 90점 미만 80점 이상
console.log('A');
} else if (score >= 70) { // 80점 미만 70점 이상
console.log('B+');
} else if (score >= 60) { // 70점 미만 60점 이상
console.log('B');
} else { // 60점 미만
console.log('F');
}
중첩 if 조건문 사용하기
if 나 else, else if 문의 중괄호 안에 동작문을 넣을 수 있다는 사실을 활용할 수 있다. 조건문도 문이기 때문에 중괄호 안에 다시 넣을 수 있다.
let first = true;
let second = false;
if (first) {
console.log('첫 번째 조건 충족!');
if (second) {
console.log('두 번째 조건도 충족!');
} else {
console.log('두 번째 조건 불충족!');
}
} else {
console.log('첫 번째 조건 불충족!');
}
switch 조건문으로 분기하기
switch 문의 기본 형식
switch (조건식) {
case 비교조건식;
동작문;
}
switch 옆 소괄호 조건식의 값이 case 의 비교 조건식 값과 일치(===0)하면 해당 동작문이 실핸된다. 보통 조건식에 변수를 넣고, 비교 조건식에는 변수와 비교할 값을 넣는다.
let value = 'A';
switch (value) {
case 'A':
console.log('A');
}
let value = 'B';
switch (value) {
case 'A':
console.log('A');
case 'B':
console.log('B');
case 'C':
console.log('C');
}
< B
< C
B, C 가 둘다 실행된다. case 하나가 실행되고 뒤로 쭉 다 실행된다. 이를 이용할 수도 있는데.
let value = 'B';
switch (value) {
case 'A':
console.log('A');
break;
case 'B':
console.log('B');
break;
case 'C':
console.log('C');
break;
}
< B
뒤에 break; 를 걸어주면 스위치문을 빠져나온다.
let value = 'B';
switch (value) {
case 'A':
console.log('A');
break;
case 'B':
console.log('B');
break;
case 'C':
console.log('C');
break;
default:
console.log('아무것도 일치하지 않음');
}
else 랑 똑같이 모든 case 가 아니면 default 가 실행된다.
default 문이 가장 위에 있어도 된다.
조건부 연산자(삼항 연산자)
if 문과 switch 문 외에도 분기 처링레 사용하는 식이 있다. 이는 조건부 연산자 또는 삼항 연산자라고 하는 연산자로 표현한다.
조건부 연산자의 기본 형식
조건식 ? 참일 때 실행되는 식 : 거짓일 때 실행되는 식
조건부 연산자는 문이 아니라 식이기 때문에 결과값이 나온다. (if 문은 결과값이 안나오는 경우가 많다.)
5 > 0 ? '참입니다' : '거짓입니다';
< "참입니다"
연산자의 우선순위가 조건부 연산자의 우선순위보다 높기 때문에 5 > 0 이 검ㄴ저 실행되고, 이것이 조건식이 된다. 5 > 0 은 true 이므로 ‘참입니다’ 가 결괏값으로 출력된다.
조건부 연산은 보통 조건에 따라 달라지는 값을 변수에 대입하기 위해 사용한다.
let value = 5 < 0 ? '참입니다' : '거짓입니다';
< undefined
value;
< "거짓입니다"
switch 문을 if 문으로 바꿀 수 있는 것처럼 조건부 연산도 if 문으로 변경할 수 있다.
let condition = true;
let value = condition ? '참' : '거짓';
console.log(value);
if (condition) {
value = '참';
} else {
value = '거짓';
}
console.log(value);
if 문보다 조건부 연산이 훨씬 짧다. 이렇듯 조건부 연산은 조건문에서 짧게 줄이기 위해서도 사용한다.
조건부 연산도 중첩해서 사용할 수 있다.
let condition1 = true;
let condition2 = false;
let value = condition1 ? (condition2 ? '둘 다 참' : 'condition1 만 참') : 'condition1 이 거짓' ;
햇갈리기 쉬우므로 소괄호로 적극적으로 묶어준다.
들여쓰기로 구분해도 된다.
let value = condition1
? condition2
? '둘 다 참'
: 'condition1 만 참'
: 'condition1 이 거짓';
첫 번째 조건(condition1)이 참인 경우에 중첩된 조건부 연산에 들어갔지만, 거짓인 경우에 들어갈 수도 있다.
가독성을 위해 소괄호 연산자로 묶어주는 게 좋다.
let condition1 = false;
let condition2 = true;
let value = condition1 ? 'condition1이 참' : (condition2 ? 'condition2가 참' : '둘 다 거짓');
console.log(value);
간단한 If 문, switch 문이 조건부 연산자로 바꾸기 쉽고, 동작문 부분이 여러줄이면 바꾸기 어려운 경우도 많다.
반복문(while)
조건문과 반복문 배우면 대부분의 프로그램을 만들 수 있다.
while 문의 기본 형식
while (조건식)
동작문;
while 문은 조건식이 참인 동안 반복해서 동작문을 실행한다. 동작문이 하나 이상인 경우에 중괄호로 묶을 수 있다. if 문과 같은 이유로 동작문이 하나더라도 중괄호로 묶어주는 것이 좋다.
while (조건식) {
동작문 1;
동작문 2;
동작문 3;
}
무한반복문
while (true) {
console.log('Hello, while!');
}
- 무한반복되면 브라우저를 종료하거나 작업관리자에서 브라우저를 강제종료 시킨다.
반복문을 멈추려면 조건식을 false 로 만들어준다.
let i = 1;
while (i <= 100) {
console.log('Hello, while!');
i++;
}
i = i + 1 을 해도 되지만 간단하게 i += 1 이나 i++ 로 표현할 수 있다. i 가 101 이 되면 조건식이 false 가 되어 반복문을 멈춘다.
반복문(for)
for 문의 기본 형식
for (시작; 조건식; 종료식)
동작문;
for 문 소괄호에는 세 가지 요소가 들어간다. 시작(식과 변수 선언이 들어간다)과 조건식과 종료식이다. 조건식과 동작문은 while 문과 같다. 동작문이 여러 개인 경우 중괄호로 묶어줄 수 있다.
조건식 → 동작문 → 종료식 순으로 반복
for (let i = 0; i < 100; i++) {
console.log('Hello, for!);
}
비교 → console.log → i ++ 반복
while 문과 for 문 비교
// while 문
let i = 0;
while (i < 100) {
console.log('Hello, while!');
i++;
}
// for 문
for (let i = 0; i < 100; i++) {
console.log(''Hello, for!');
}
for 문의 시작, 조건식, 종료식은 생략할 수 있다.
for (;;) {
}
이런 코드도 실행되는 코드다. 단 해당 코드는 무한반복 코드.
for (let i = 1; i <= 100; i++) {
console.log(i)
}
for (let i = 0; i <= 99; i++) {
console.log(i + 1)
}
for (let i = 0; i < 100; i++) {
console.log(i + 1)
}
for (let i = 0; i < 100; i += 1) {
console.log(i + 1)
}
for (let i = 0; i < 100; i = i + 1) {
console.log(i + 1)
}
1부터 100까지 반복해서 출력하는 for 문
'스터디 > 웹개발' 카테고리의 다른 글
| 2022년9월24일 TIL - 정보처리기사 : UI 설계/디자인, 와이어프레임, 프로토타이핑 (0) | 2022.09.28 |
|---|---|
| 2022년9월23일 TIL - 자바스크립트 - break, continue, 중첩 반복문, 별찍기, 배열, 배열 메서드, 함수, 매개변수와 인수 (0) | 2022.09.26 |
| 2022년9월21일 TIL : 정보처리기사 실기 (0) | 2022.09.25 |
| 2022년9월20일 키오스크 UIUX 디자인 (0) | 2022.09.24 |
| 2022년9월19일 TIL : 자바스크립트 변수 선언하기 (0) | 2022.09.24 |