
조건문은 어떠한 조건을 판별하는
기준을 만드는 것이다. 또한 조건문에는 반드시비교 연산자가 필요하며 비교의결과는 항상 boolean, 즉 true 혹은 false이다.
✍ 조건문은 아래와 같이 쓸 수 있으며 조건에는 Boolean 값이 나오는 비교구문이 들어간다.
if (조건1){
// 조건1이 true일 경우 실행할 내용
} else if (조건2) {
// 조건1이 false이고 조건2가 true일 경우 실행할 내용
} else {
// 조건1,2 모두 해당하지 않을 경우 실행할 내용
}
타입까지 비교 가능한 ===(같다)와 !==(다르다)를 사용하고 ==, != 는 타입까지 비교할 수 없기 때문에 사용을 지양한다.
3 > 5 // false
9 < 10 // true
'hello' === 'world'; // false
100 === '100' // false
'true' === true // false
null === undifined // false
100 == '100' // true
1 == true // true
null == undifined // true
| 초과 | 미만 | 이상 | 이하 | 같다 | 다르다 |
|---|---|---|---|---|---|
| > | < | >= | <= | === | !== |
2가지 조건이 한번에 적용되는 경우
논리연산자를 사용한다.
2가지 조건을 모두 만족해야 함
true && true // true
true && false // false
false && false // false
2가지 조건 중 하나라도 만족하면 됨
true || true // true
true || false // true
false || false // false
NOT연산자는 truthy, falsy 여부를 반전시킴
!false // true
!(3>2) // false
!undefined // true, undefined를 false로 취급
!'Hello' // false, "Hello'를 true로 취급
다음은 if문에서 false로 변환되므로 if문이 실행되지 않는다.
if (false)
if(null)
if(undefined)
if(0)
if(NaN)
if('')
작은따옴표(
')나 큰따옴표(")를 사용하여 문자열을 구분한다. 또한 숫자와 같이 문자열이 아닌 형태를 따옴표를 붙여 문자열로 변경할 수있다.
[index]는 해당하는 index의 문자열을 반환하고length는 문자열 전체 길이를 반환한다.
let str = 'CodeStates'
console.log(str[0]) // 'C'
console.log(str[4]) // "S'
console.log(str[10]) // undefined
console.log(str.length) // 10
indexOf()는 처음으로 일치하는 index를 반환하고 찾고자 하는 문자열이 없으면 -1을 반환한다.lastIndexOf()는 문자열 뒤에서 부터 찾고 그 문자열의 index를 반환한다.
'Blue Whale'.indexOf('Blue') // 0
'Blue Whale'.indexOf('blue') // -1
'Blue Whale'.indexOf('Whale') // 5 (공백도 index에 포함)
'Blue Whale Whale'.indexOf('Whale') // 5
'canal'.lastIndexOf('a') // 3
seperator(공백(
' '), 쉼표(,), 줄바꿈(\n) 등)에 따라 분리된 문자열을배열 형태로 얻을 수 있다.csv형식을 처리할 때 유용하게 사용된다.
let str = 'Hello from the other side';
console.log(str.split(' ') // 'hello','from','the','other','side']

substring은 idx1과 idx2 사이의 문자열을 반환하고 이 때 idx2번째의 문자열은 포함하지 않는다.
let str = 'abcdefghij'
console.log(str.substring(0, 3)) // 'abc'
console.log(str.substring(3, 0)) // 'abc'
cosnole.log(str.substring(1, 4)) // 'bcd'
toLowerCase()는 문자열을 소문자로 반환하고toUpperCase()는 문자열을 대문자로 반환한다.
console.log('ALPHABET'.toLowerCase()) // 'alphabet'
console.log('alphabet'.toUpperCase()) // 'ALPHABET'
✍ 즉, 원본이 변하지 않는다. String Method를 사용하여도 기존에 변수에 할당된 값은 변함이 없으므로 바뀐 값을 사용하기 위해서는 재할당이 필요하다.
let str = 'blue whale'
console.log(str.substring(0,4)) // 'blue'
console.log(str) // 'blue whale'
console.log(str.toUpperCase()) // 'BLUE WHAlE'
console.log(str) // 'blue whale'
str = str.toUpperCase() // 재할당
console.log(str) // 'BLUE WHALE'