Unit3 - [JavaScript] 기초 제어문_1

예진·2022년 8월 23일
0

🔥 조건문

조건문은 어떤 조건을 판별하는 기준을 만드는 것이다.
조건에는 결과가 Boolean으로 나오도록 하는 표현식 or 비교구문을 쓴다.

if (조건1) {  
	// 조건1이 참일 경우 실행할 코드
} else if (조건2) {
  // 조건1이 참이 아니고 조건2가 참일 경우
} else {
  // 모든 조건이 참이 아닐 경우
}

비교연산자(comparison operator)
비교연산자 => 비교의 결과는 Boolean (true 또는 false)
비교연산자에는 >, <, >=, <=, ===, !== 가 있다. ( ==, != 는 사용하면 안된다. )
조건문에는 반드시 비교연산자가 필요하다.

논리연산자(logical operator)
- &&(AND) : 둘 다 모두 ture일 때, true 반환, 그렇지 않으면 false를 반환
- ||(OR) : 하나라도 true이면 true를 반환, 그렇지 않으면 false를 반환
- !(NOT) : true이면 false로, false면 true로 반환, 두개 이상 중첩 가능

논리 연산자의 결과에는 Boolean이 아닌 값이 들어갈 수 있다.

  • OR연산자는 두 개의 turthy 값을 만나면 첫 번째 turthy값을 출력한다.
    (둘 다 falsy 일 경우, 뒤에 있는 falsy값 출력)
  • AND연산자는 falsy값을 만나면 그 값을 출력한다.
    (둘 다 turthy 일 경우, 뒤에 있는 turthy값 출력)
// 기억해야할 6가지 falsy 값 
if(false)
if(null)
if(undefined)
if(0)
if(NaN)
if('')

추가 내용

+ Javascript 제곱 구하는 방법 3가지

num * num  // 여기서 num은 임의의 숫자
num ** 2
Math.pow(num, exponent)  // exponent = 지수

🔥 문자열

1. 문자열 기초

문자열 : string , 문자 : character or char

str[index] : index는 0부터 시작 ( index로 접근 가능하지만 수정 불가능, read-only)

let str = 'Study';

console.log(str[0]);  // 'S'
console.log(str[3]);  // 'd'
console.log(str[10]);  // undefined

+ 연산자 사용 가능 : 문자열 + 문자열

문자열 타입 + 다른 타입 : 모두 string 형식으로 변환

let str1 = 'abc';
let str2 = 'def';
let str3 = '1'

console.log(str1 + str2);  // 'abcdef' 
console.log(str1 + 123);  // 'abc123' 
console.log(str3 + 1);  // '11' 

2. 문자열 다루기

.length : 문자열의 전체 길이 반환

let str = 'abcdef'

console.log(str.length);  // 6

.indexOf()

str.indexOf(searchElement)
: 문자열 내에 지정된 요소가 위치하고 있는 첫 번째 index를 반환

str.lastIndexOf
: 문자열 뒤에서부터 지정된 요소가 위치하고 있는 index를 찾아 반환

+ 지정된 요소가 문자열 내에 존재하지 않으면 -1 반환

let str = 'abcdefa'

console.log(str.indexOf('c'));  // 2
console.log(str.indexOf('z'));  // -1
console.log(str.lastIndexOf('a'));  // 6

.split()

str.split(sepeartor)
: 문자열을 지정한 구분자를 이용하여 문자열을 나눈 후, 배열을 만들어 반환

let str = 'I love coffee';

str.split(' ')  // ['I', 'love', 'coffee']
// 공백을 기준으로 문자열을 나눈다

( + CSV 형식을 처리할 때 유용하다. )

.substring(start, end)

str.substring(start, end) : start와 end의 index 사이 문자열 반환

let str = 'abcde';

str.substring(0,2);  // 0~2 사이 index을 반환 => 'ab'
str.substring(0,5);  // 0~5 사이 index을 반환 => 'abcde'

( + str.slice(start, end)와 비슷하다. )

.toLowerCase() / .toUpperCase()

str.toLowerCase() : 문자열을 소문자로 변환
str.toUpperCase() : 문자열을 대문자로 변환

let str = 'ABCDE';

str.toLowerCase();  // 'abcde'
str.toUpperCase();  // 'ABCDE'

+ 문자열 주요 메서드

concat() : 문자열 연결 연산자 + 처럼 문자열을 이어붙일 수 있다.
slice() : 문자열 일부를 자를 수 있다.
includes() : 문자열 내에 특정 문자가 포함되어 있는지 확인


mutable & immutable

mutable : 원본 변경 o , immutable : 원본 변경 x
모든 string method는 immutable이다.
array method는 immutable, mutable의 여부를 잘 기억해야 한다.


추가 내용

- Math 내장 객체

Math.floor() : 괄호 안의 숫자와 같거나 작은 정수 중에서 가장 큰 수를 반환( 괄호 안의 숫자를 내림하여 반환 )

console.log(Math.floor(5.95));  // 5
console.log(Math.floor(-5.05));  // -6

Math.min() : 괄호 안의 숫자들 중 가장 작은 값을 반환

let x = 10, y = -20;
let z = Math.min(x, y);

console.log(z);  // -20

Math.abs() : 괄호 안 숫자의 절대값 반환
양수이거나 0이면 숫자 그대로 반환 / 음수라면 숫자의 절대값, 양수 반환

Math.ceil() : 괄호 안의 숫자를 올림하여 반환

Math.round() : 괄호 안의 숫자를 반올림하여 반환

Math.sqrt() : 괄호 안의 숫자의 루트값을 반환

Math.pow() : 괄호 안의 첫 번째 숫자를 밑, 두번째 숫자를 지수인 숫자를 반환 (거듭제곱)


템플릿 리터럴(Template literals)

: 이중 따옴표 나 작은 따옴표 대신 백틱 (` `) 사용
백틱 (` `) : ${}를 사용해서 문자열과 변수를 같이 사용 (+ 연산자 대체 가능)

'현재 시각은 ' + hour + '시 ' + min + '분 ' + sec + '초 입니다.'
`현재 시각은 ${hour}${min}${sec}초 입니다.`;
// 위와 아래 같은 표현
profile
😊

0개의 댓글