변수

  • 선언은 한번만
    let myname;

  • 할당
    myname = 'Steve';

  • 표현식(expression)에서는 변수들을 사용할 수 있음

  • 변수를 이용해 값을 나타내기

let radius = 5;
pi * radius * radius;
  • 결과물을 다시 변수로 담을 수도 있음
let areaOfCircle = pi * radius * radius;

타입

  • 타입마다 다른 속성과 메소드가 있음
  • typeof를 활용하여 특정 값의 타입을 확인할 수 있음
  • 타입의 종류는 크게 6가지❗️
    문자열, 숫자, Boolean, 배열과 객체, undefined, 함수

함수

  • 함수는 입력(input) ➡️ 함수 ➡️ 출력(output)의 과정으로 이루어져 있음
  • 함수의 선언

1) 함수 선언식

function myFunction(input) {
}

2) 함수 표현식

let timeToGoHome = function(speed, distance) { // 전달인자(arguments)와 함께 함수에 전달
  return distance / speed;
}

timeToGoHome(10, 200); // 20

조건문

  • 비교연산자
    < > === !== <= >=
    비교의 결과는 늘 Boolean // 즉, true or false으로 반환

  • 논리연산자
    &&(AND연산자), ||(OR연산자), !(NOT연산자)

isStudent && isFemale
true || false // true
!undefined // true
!'Hello' // false
  • 기억해야 할 6가지 falsy 값
// 다음은 if문에서 false로 변환되므로, if 구문이 실행되지 않습니다.
if(false)
if(null)
if(undefined)
if(0)
if(NaN) //참고로 NaN은 자신과도 비교를 불허 ➡️ NaN === NaN // false
if('')
  • NaN 자신과의 비교

✅ 주소값이 다르다고 생각하기


문자열

  • 문자열 length라는 속성 활용하기
    str.length

  • 문자열 글자 하나하나에 접근하기
    str[1]

  • 문자열 합치기
    word1 + " " + word2

  • 문자열 원하는 만큼만 추출하기
    str.substring(0, 3)
    str.slice(0, 3)

  • 영문을 모두 대문자 또는 소문자로 바꾸기
    str.toUpperCase(), str.toLowerCase()
    ⚠️ 해당 메서드 뒤 괄호가 붙지 않으면 제대로 작동되지 않음
    ✅ str.toLowerCase(), str.toUpperCase() 는 IMMUTABLE 하다.

  • 문자열 중 원하는 글자 index 찾기 (+ lastIndexOf 메서드)
    str.indexOf('a');

str.indexOf()
‘Blue Whale Whale’.indexOf(‘Whale’); // 5> 첫번째 Whale 기준

‘canal’.lastIndexOf(‘a’); // 3> 뒤에서부터 찾아서 index를 나타냄
  • 문자열 중 원하는 글자 포함되어 있는지 확인하기
    str.includes('a');
    ⚠️ indexOf()와 includes()의 차이점: https://velog.io/@mnmm/js-pre2
str.substring(start, end);
arguments: 시작 인덱스, 마지막 인덱스
return value: 시작과 마지막 인덱스 사이의 문자열

let str = ‘abcdefghij’;
str.substring(0, 3); // ‘abc’
str.substring(3, 0); // ‘abc’
str.substring(1, 4); // ‘bcd’
str.substring(-1, 4); // ‘abcd’ 음수는 0으로 취급
str.substring(0, 20); // ‘abcdefghij’
  • 띄어쓰기 " "로 문자열을 구분하여, 배열로 바꾸기
    str.split(" ").join("");

  • 모든 string 메서드는 IMMUTABLE 하다.

2020.09.08 업데이트
profile
개발루:)

0개의 댓글