TIL) JavaScript 조건문과 문자열

omegle·2022년 8월 23일
0

JavaScript

목록 보기
2/8
post-thumbnail

조건문

Operator ==과 ===의 차이

== : Equal Operator
두 피연산자의 값의 타입이 다를 경우 자동으로 일부 피연산자의 타입을 변환 후 값을 비교한다.

=== : Strict Equal Operator
타입을 변환하지 않으므로 Strict, 엄격하게 비교할 때 사용한다.(type이 다르면 false를 반환)

ex)

1 === '1' /// false를 반환한다.
1 == '1' /// true를 반환한다.

논리 연산자(Logical Operator)

ex)

1. 논리연산자 AND(&&)

AND 연산자(&&)를 사용했을 경우 두 조건이 모두 truthy 해야만 true, 그렇지 않으면 false가 출력됨

 true && true // true
 true && false // false
 false && false // false

ex) 학생이면서, 여성일 때 통과

 isStudent && isFemale;  // and 연산자

2. 논리연산자 OR(||)

OR연산자(||)를 사용했을 경우 두 조건 중 하나라도 truthy한 값일 경우 true, 그렇지 않으면 false가 출력됨

true || true // true
true || false //  true
false || false // false

ex) 학생이거나, 여성일 때 통과

isStudent || isFemale;   // or 연산자

3. 논리연산자 NOT

NOT연산자는 결과가 true이면 false를, false이면 true를 반환. 2개 이상을 중첩하는 것도 가능함

!false // true
!(3>2) // false
!undefined // true
->  undefined false취급(falsy)
!'Hello' // false
-> 문자열(빈 문자열이 아니면)을 모두 참으로 취급(truthy)

ex) 학생이 아니면서, 여성일 때 통과

  !isStudent && isFemale;

4. 기억해야 할 6가지 falsy 값

if, false, null, undefined, 0, NaN, ''

-> 다음은 if 문에서 false로 변환되므로, if 구문이 실행되지 않음.

if (false)
if (null)
if (undefined)
if (0)
if (NaN) --- Not a Number이라는 뜻!
if ('')

문자열

  -str[index] 
  var str = 'restaurant';
  ex) console.log(str[0]); // 'r'

특징
- index로 접근은 가능하지만 쓸 수는 없다 !
- immutable value이지만 재할당은 가능하다
- 연산자를 쓸 수 있음
string 타입과 다른 타입 사이에 +연산자를 쓰면, string 형식으로 변환(toString)


str.length

  • 문자열의 전체 길이를 반환
var str = 'restaurant';
console.log(str.length); // 10

str.indexOf(searchValue)

  • arguments: 찾고자 하는 문자열
  • return value: 처음으로 일치하는 index, 찾고자 하는 문자열이 없으면 -1
  • lastIndexOf는 문자열 뒤에서 부터 찾
  • 단점 : Internet Explorer와 같은 구형 브라우저에서는 작동하지 않음

str.includes

  • arguments:찾고자 하는 문자열
  • return value: 찾으면 true, 없으면 false
  • Internet Explorer와 같은 구형 브라우저에서도 작동함

str.split(seperator)

  • arguments: 분리 기준이 될 문자열
  • return value: 분리된 문자열이 포함된 배열
  • csv 형식을 처리할 때 유용
    csv(comma-separated values) = 몇 가지 필드를 쉼표(,)로 구분한 텍스트 데이터 및 텍스트 파일

csv.split(seperator)

  • csv.split('\n') <--------줄바꿈(엔터)
  • 중간에 문자열 똑 떼고 싶을때

str.substring(start, end)

  • arguments: 시작 index, 끝 index
  • return value: 시작과 끝 index 사이의 문자열

str.slice(start, end)

  • arguments: 시작 index, 끝 index
  • return value: 시작과 끝 index 사이의 문자열

-> substring과 slice의 차이점

start > end 일 경우 두 함수의 처리가 다름

substring() :
start 값과 end 값을 바꾸어서 처리

slice() :
비어있는 string, 즉 ""을 리턴


str.toLowerCase()/str.toUpperCase()

  • arguments: 없음
  • return value:대,소문자로 변환된 문자열

what is Immutable? Mutable?

mutableimmutable
- 변할 수 있는(원본이 변함)- 불변, 변할 수 없는(원본이 변하지 않음)
- 참조타입- 원시타입
- 해당 데이터 주소를 찾아 값을 변경함- 해당 데이터 주소와 별개의 새로운 주소에 값이 할당됨
- Array Method = Array.splice(), Array.unshift(), Array.shift(), Array.push(), Array.pop()- String Method = String.slice(), String.replace(), String.split()
profile
JANG EUN JI | 장은지

0개의 댓글