function name(num) {
return num === 3; //num이 3이면 true, 아니면 false 리턴함.
}
ex ) 수 많은 숫자들 --여러 조건들--> 조건에 부합하는 숫자들
&&(true)
, ||(true)&&(false)
, ||(true) --> 각 값에 !붙여도 &&(false)
, ||(true)&&(false)
, ||(false)&&(true)
백틱(``)
과 ${}
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"
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('찾을 단어')
replace
: str.replace("찾을 문자열", "변경할 문자열")
let toDo = 'study',
num = 5;