코플릿 문제하고 퀴즈 및 연습 문제들 꾸준히 풀어보기
- truthy와 falsy 가 조건문에서 작동하는 방식
- 비교 연산자를 통한 엄격한 비교(=== , !==)
- if 와 else if, else에 대한 이해
- 논리 연산자를 (&&, ||, ! 등) 통해 복잡한 조건을 간결하게 작성
- 어떠한 조건을 판별하는 기준을 만드는 것. 반드시 비교 연산자가 필요하다!
- 비교의 결과는 늘 Boolean, 즉 true 혹은 false
- === '같다' '수학적인 의미에서의 같다와 동일'
어떠한 조건을 판별하는 기준을 만드는 것. 반드시 비교 연산자가 필요하다!
비교의 결과는 늘 Boolean, 즉 true 혹은 false
=== '같다' '수학적인 의미에서의 같다와 동일'
=은 할당이고 ===는 비교 연산자로 비교하는거야.!!!(어떤 값이랑 같은지 여부를 확인할 때 === 씀)
<(미만) >(초과) >=(이상) <=(이하) === 같다 !== 다르다
다음 연산자들은 사용 X. 아래 연산자들은 타입을 엄격하게 비교하지 않는다.
==(같다), !=(다르다)ex) 1 === '1' false, 1 == '1' true
if (조건1) { // 조건1이 통과할 경우 } else if (조건2) { // 조건1이 통과 x // 조건2가 통과할 경우 } else { // 모든 조건이 통과하지 않는 경우 }
조건에는 Boolean으로 결과가 나오는 비교구문이 들어감
! >> NOT 연산자(truthy, falsy 여부를 반전시킴)
두가지 조건이 한번에 적용되는 경우? 논리 연산자를 사용
학생이면서, 여성일 때 통과
isStudent && is Female ;
- &&는 AND 연산자
학생이거나, 여성일 때 통과
isStudent || isFemale; >> ||는 OR 연산자
학생이 아니면서, 여성일 때 통과
!isStudent && isFemale;
- 논리 연산자 Not
!false // true
!(3>2) // false
- NOT연산자는 결과가 true이면 false를, false이면 true를 반환. 2개 이상을 중첩도 가능
let isStudent = true; let isFemale = false;
console.log(!!!isStudent) console.log(!!!isFemale) > false, true
- undefined 는 값이 false로 취급되는 말임. (falsy)
! undefined // true- 빈 문자열이 아닌 이상 모든 문자열은 참으로 취급된다. ( truthy )
- ! 'Hello' // false
- 논리 연산자 OR
true || false // true- OR연산자(||)를 사용했을 경우 두 조건 중 하나라도 truthy한 값일 경우 true, 그렇지 않으면 false가 출력
let isStudent = true; let isFemale = false; console.log(isStudent || isFemale) console.log(isStudent || !isFemale) console.log(!isStudent || isFemale) console.log(!isStudent || !isFemale) > true, true, false, true
- 논리 연산자 AND
true && false // false- AND 연산자(&&)를 사용했을 경우 두 조건이 모두 truthy 해야만 true, 그렇지 않으면 false가 출력
let isStudent = true; let isFemale = false; console.log(isStudent && isFemale) console.log(isStudent && !isFemale) console.log(!isStudent && isFemale) console.log(!isStudent && !isFemale) >false >true >false >false
if 문에서 false 변환되므로, if 구문 실행 X
if (false)
if (null)
if (undefined)
if (0)
if (NaN)
if ('')
null ㅡ 값이 없다, undefined ㅡ 정의 X
0(꺼짐) 1(켜짐) NaN ''
- length 속성을 활용해 문자열의 길이를 확인
- 두 개 이상의 문자열을 하나의 문자열로 만듦
- slice() 메서드를 활용해 문자열을 원하는 만큼 ‘복사’
- 영문으로 된 문자열을 대문자 또는 소문자 변환
- 문자열 중 원하는 문자의 index를 찾고 접근
str.indexOf('a') str.lastIndexOf('a') str[1]
- includes() 메서드를 활용해 문자열 중 원하는 문자가 포함되어 있는지 확인
str.includes('a')
method를 활용해 문자열을 배열로 바꾸거나, 배열을 문자열로 바꿀 수 있는가
-split()
-join()
- 템플릿 리터럴(Template literals) 문법을 사용
- str[index]
index로 접근은 가능하지만 값을 바꿀 수는 없다.- +연산자를 쓸 수 있다.
string 타입과 다른 타입 사이에 + 연산자를 쓰면 string 형식으로 변환'1' + true "1true" '1' + [1,2,3] "11,2,3"
- .length
문자열의 길이를 리턴let str = 'code states'; console.log(str.length)
- .indexOf
문자열 내에 지정된 요소가 위치하고 있는 첫 번째 인덱스를 리턴
지정된 요소가 문자열 내에 존재하지 않을 경우 -1을 리턴let str = 'code states' console.log(str.indexOf('s')) console.log(str.indexOf('i'))
- split()
문자열을 지정한 구분자를 이용하여
여러 개의 문자열로 나눈 후 배열의 형태로 리턴let str = '사과, 바나나, 오렌지, 배, 감, 딸기'; let word = str.split(', '); console.log(word); ['사과', '바나나', '오렌지', '배', '감', '딸기']
- toUpperCase()
소문자를 대문자로 변환합니다.- toLowerCase()
대문자를 소문자로 리턴합니다.- .includes
인덱스는 인클루드의 기능을 포함- str.split
- str.substring
- 문자열을 지정한 구분자를 이용하여 여러 개의 문자열로 나눈 후 배열의 형태로 리턴
function isEvenAndGreaterThanTen(num) { if (num % 2 === 0 && num > 10) { return true; } return false; } return false >>> else , else if return false
else else if 생략해도 되고 생략안해도된다. 마지막에