/* JavaScript DAY09 2022.11.13 */
/* String methods --------------------------------------------------------------------- */

// 여러줄 표현
let ex1 = `안녕하세요 
반갑습니다.`;

let ex2 = "안녕하세요\n반갑습니다."; // \n을 붙여야하며, 꼭 한줄로 써야함

/* --------------------------------------------------------------------- */

// str.indexOf(text): 문자를 인수로 받아 몇 번째 위치에 있는지 위치(index)를 반환한다.
let ex3 = `안녕하세요 반갑습니다.`;
ex3.indexOf('반갑'); // 6
ex3.indexOf('준영'); // -1 <= 찾는 문자가 없으면 -1을 반환

// 또한 포함 된 문자가 여러개라도 첫 번째 위치만 반환한다.
// 따라서 if문을 사용할 때, 주의해야한다.
let ex4 = "준영 하이!";

if(ex4.indexOf('준영')){
  console.log('준영이라는 단어가 포함되었습니다!');
} 
// 작동을하지 않는다. 어째서 콘솔이 나오지 않는걸까?

// 바로 '준영'이라는 단어로 시작하는 문장에서 '준영'을 찾는 것이기 때문에, indexOf()를 사용하게 된다면, 0을 반환하기 때문이다.
// if에서 0은 false를 뜻하기 때문에, 아래와 같이 사용해야지 콘솔이 나오게 된다.
if(ex4.indexOf('준영') > -1){
  console.log('준영이라는 단어가 포함되었습니다!');
}
// '준영이라는 단어가 포함되었습니다!'

/* --------------------------------------------------------------------- */

// str.substring(n, m): slice와 굉장히 유사하지만, n부터 m까지가 아닌 그냥 n과 m사이라고 생각하면 편하다.
// (n과 m을 바꿔도 동작한다/ 음수는 0으로 인식)
let ex5 = '조준영최고'

ex5.substring(0, 3); // '조준영'
ex5.substring(3, 0); // '조준영'

/* --------------------------------------------------------------------- */

// str.substr(n, m): substring과 비슷해 보이지만, n이 시작인 점과 m은 가져올 갯수를 뜻한다.
let ex6 = '자그럼a부터4개를가져와보자'

ex6.substr(3, 4); // 'a부터4'
ex6.substr(-11, 4); // 'a부터4'

/* --------------------------------------------------------------------- */

// str.trim(): 앞 뒤 공백을 제거한다.
// 보통 사용자로부터 무언가를 입력 받을 때 많이 사용한다. (의도적인, 앞이나 뒤에 스페이스를 넣는 경우도 방지하기 위해..)
let ex7 = '   글자제한꼼수    ';

ex7; // '   글자제한꼼수    '
ex7.trim(); // '글자제한꼼수'

/* --------------------------------------------------------------------- */

// str.repeat(n): 문자열을 n번 반복한다.
let ex8 = '준영!';

ex8.repeat(10); // '준영!준영!준영!준영!준영!준영!준영!준영!준영!준영!'

/* --------------------------------------------------------------------- */

// 문자열은 여러 진법으로 나타낼 수 있으며, 그 수로 비교를 한다.
'a' < 'c'; // true

// str.codePointAt(0)을 사용하면, 해당 문자의 십진법을 알 수 있다. 
'a'.codePointAt(0); // 97
'c'.codePointAt(0); // 99

// 반대로 String.fromCodePoint(숫자코드)를 사용하면 숫자코드를 알면 문자를 알아 낼 수 있다.
String.fromCodePoint(97); // 'a'
String.fromCodePoint(99); // 'c'
profile
개인 이력, 포폴 관리 및 기술 블로그 사이트 👉 https://aimzero-web.vercel.app/

0개의 댓글