TIL 2일차

ᄋᄋ·2021년 11월 10일
0

코플릿 조건문(내가 알아야 할 개념)

  • Boolean으로 평가되는 표현문은 바로 리턴 가능함.
function name(num) {
	return num === 3;	//num이 3이면 true, 아니면 false 리턴함.
}		
  • 각 달에 몇 일이 있는지 리턴하는 함수
    : 단순화 --> 2월(28일), [4, 6, 9, 11]월(30일), 나머지(31일)
    : if문 우선순위 정하기(예외적인 2월 -> [4,6,9,11] -> 나머지)
  • 여러 조건을 만족해야 하는 함수
    : && > || (우선순위), 괄호()의 우선 순위는 최우선!
  • if문은 먼저 걸러야 될 것들이 뭔지 생각해보고 코드 짜기.
    : ex ) 수 많은 숫자들 --여러 조건들--> 조건에 부합하는 숫자들
  • OR 함수(&& 와 !로만 코드 짜기)
    : &&는 참 1개, 거짓 3개임 (반면, OR은 참 3개, 거짓 1개임)
    : (참,참) --> &&(true), ||(true)
    : (참,거짓), (거짓,참)--> &&(false), ||(true) --> 각 값에 !붙여도 &&(false), ||(true)
    : (거짓,거짓) --> &&(false), ||(false)
    : (!거짓,!거짓) --> &&(true)
  • 템플릿 문자열 : 백틱(``)${}

chapter 문자열

  • string(=str)은 문자열, character을 문자(줄여서 'char')

  • str의 char에 접근하기: str[index], index는 0부터 시작.
    : 배열의 요소 접근 방식과 비슷함.

    let str = "coding";
    console.log(str[3]);		// "i"
    console.log(str[10]);		// undefined
    str[0] = "G";		// 안 바뀜(배열에서는 가능)

    : 문자열을 수정하려면 재할당을 해야 함.

  • +연산자 사용 가능
    : 문자열 잇기.
    : string 타입 + 다른 타입 --> 다른 타입이 str 타입으로 변환됨(toString).

    '1' + 5 = '15';

    : str1.concat(str2, str3, str4..)으로도 문자열 잇기 가능.

  • 문자열의 속성(Property) : length 프로퍼티(문자열 전체 길이 반환)

let word = 'Hello';
console.log(word.length);		// 5 (숫자형)
  • 문자열의 메소드(method) :

    indexOf, split, substring, toUpperCase / toLowerCase

    여기서 짚고 넘어가야 할 개념✔
    - immutable(원본이 변하지X) vs mutable(원본이 변함/가공O)
    - 모든 srting 메소드는 immutable 함👈(+array는 둘 다 있음, 구분 중요!)

    • str.indexOf(searchValue)

      arguments - 찾고자 하는 문자열 (=serchValue)
      return value(결괏값) - 있다면, 위치한 (맨 앞)인덱스 번호 / 없다면 -1

      : lastIndexOf는 뒤에서부터 찾음.

    • str.includes(searchValue)

      arguments - 찾고자 하는 문자열
      return value - 있으면 true, 없으면 false

      : IE 같은 구형 브라우저에서는 작동 X

      : indexOf > includes


    • str.split(seperator) [ string --> array ]

      arguments - 분리 기준이 될 문자열
      return value - 분리된 문자열로 이루어진 배열

      : csv (comma-seperated value) 형식 처리에 유용함.
      : seperator로는 쉼표(","), 띄어쓰기(" "), 줄바꿈 문자(백슬래쉬n, "\n") 등등이 있음.

      : [ array --> string ] Array.join()
      - 배열의 모든 요소를 연결해 하나의 문자열을 만듬.
      const elements = ['Fire', 'Air', 'Water'];

      console.log(elements.join());
      // expected output: "Fire,Air,Water"
      
      console.log(elements.join(''));
      // expected output: "FireAirWater"
      
      console.log(elements.join('-'));
      // expected output: "Fire-Air-Water"

      : str.split(" ").join(" ")


    • str.substring(start, end)

      arguments - 시작index, 끝index
      return value - start부터 end 직전까지의 문자열

      : ex) 'apples'.substring(0, 3) --> 'app'
      : (3, 0)으로 범위지정 해도 (0, 3)과 같은 결과 나옴.
      : 음수는 0으로 취급함 (-1, 4) ---> (0, 4)
      : 인덱스 범위 초과해도 (0, 20) --> (0, 문자열 제일 끝까지)

      : str.slice(start, end) 와 비슷하지만 디테일이 다름 --> 링크 참조(https://hianna.tistory.com/340)


    • str.toUpperCase() | str.toLowerCase()
      : 대문자로 변환 | 소문자로 변환


    • immutable한 메소드로 원본 가공하기 : 재할당

      var str = "good day";
      str.substring(0, 4);		//"good"
      console.log(str);	// "good day"
      --재할당-->
      str = str.substring(0, 4);
      console.log(str);	// "good"

- Learn myself 👀

trim : 문자열 양 끝의 공백을 제거함. 공백이란 모든 공백문자(space, tab, NBSP 등)와 모든 개행문자(LF, CR 등)를 의미함.

const greeting = '   Hello world!   ';

console.log(greeting);
// expected output: "   Hello world!   ";

console.log(greeting.trim());
// expected output: "Hello world!";

공백문자 : 탭문자(\t) --> 탭(스페이스바 4칸) / carrige return(\r\n) 및 return 문자(\n) --> \r은 맨 왼쪽으로 이동, \n은 아래줄로 이동(줄바꿈).

정규표현식 : 링크 참조

match : str.match('찾을 단어')

  • match()함수는 해당 문자를 찾으면 이를 반환함.
  • 정규표현식으로 찾을 수도 있음 --> str.match(regexp)

replace : str.replace("찾을 문자열", "변경할 문자열")


checkpoint (변수와 자료형,조건문, 문자열)

  • 변수 선언 및 할당 방식, 이렇게도 가능.
    let toDo = 'study',
       num = 5;
  • parsefloat() :
    - 숫자 --> 실수(real number)
    - 문자열 --> 숫자 | NaN
    - 숫자로 시작하는 문자열 (ex, '10시') --> 숫자만 추출(Number 함수에는 없는 기능), 문자로 시작하면 NaN(ex, 'pw123')
    - falsy 값 --> NaN (Number 함수와의 차이점: Number(falsy값) --> 0)
    - parseInt() : 문자열 --> 정수
  • 조건문은 우선순위 정하는 게 중요!(교집합 먼저)
  • 문제 내용 중에서..) 3의 배수이면서 5의 배수인 수는 15의 배수.
profile
개발자A

0개의 댓글