[JavaScript] template literals, split()

2022. 9. 24. 21:22CodingTest/JavaScript Q

문제) 문구에서는 이름 부분만 계속 바뀌고 나머지 부분은 고정되게 만들기
  • handleEdit 라는 이름을 가진 함수를 구현해 봅시다.
  • 이 함수는 nickname, interests 라는 두 string을 인자로 받습니다. nickname은 유저의 닉네임을, interests 는 유저의 관심사를 의미합니다.
  • interests 에는 여러 관심사를 적을 수 있습니다. 그 때 그 관심사의 구분을 콤마(,)를 이용합니다.
  • nickname  interests 가 문제 없이 잘 들어왔다면 유저 정보를 효율적으로 관리하기 위해서 Object에 이 정보를 담아서 관리할 겁니다.
  • 예를 들어 입력 값이 nickname = "뚜비" , interests = "방탈출,테니스,멍 때리기" 라고 했을 때
  • 아래와 같은 Object를 리턴하도록 구현해 주세요.
  • ⚠️  주의
  • interests 는 배열입니다.
  • interests 를 적을 때 콤마(,) 뒤에 스페이스는 지워주세요.
{
    nickname: "뚜비",
    interests: ["방탈출","테니스","멍 때리기"],
    bio: "제 닉네임은 뚜비입니다. 취미는 방탈출,테니스,멍 때리기입니다."
}

 

 template literals

 템플릿 리터럴은 일반 문자열과 비슷해 보이지만, ‘ 또는 “ 같은 통상적인 따옴표 문자 대신 백틱(backtick) 문자 `를 사용한다.

const name = '마요네즈';
const hi = `안녕하세요. 저는 ${name} 입니다.`;

string method
  • indexOf() 대신 사용가능한 method다.
    • startsWith()  : 입력한 문자열이 앞에 있으면 boolean 값으로 반환
    • endsWith()   : 입력한 문자열이 뒤에 있으면 boolean 값으로 반환
    • ncludes()      : 입력한 문자열이 문장에 있으면 boolean 값으로 반환d
const email = 'yealee.kim87@gmail.com';
 
console.log(email.startsWith('ye'));          // true
console.log(email.endsWith('com'));           // true
console.log(email.includes('@gmail'));        // true
  • repeat()  :  문자열을 변경하지 새로운문자열을 반복하여 반환
'마요'.repeat(3);           // 마요마요마요
  • ***** split() : 분리된 각 문자열로 이루어진 배열을 반환
const str = "How are you doing"
console.log(str.split(' ')       // ['How' , 'are' , 'you' , 'doing']
console.log(str.split('')        // ['H','o','w','a','r','e','y','o','u','d','o','i','n','g']
console.log(str.split('', 3)     // ['How' , 'are' , 'you']
console.log(str.split(',')       // ['How are you doing doing']

const handleEdit = (nickname, interests) => {
  let user = {
    nickname : nickname,
    interests : interests.split(","),
    bio: `제 닉네임은 ${nickname}입니다. 취미는 ${interests}입니다.`
  }
  return user;
}
console.log(handleEdit("뚜비","방탈출,테니스,멍때리기"));

// {
//   nickname: '뚜비',
//   interests: [ '방탈출', '테니스', '멍때리기' ],
//   bio: '제 닉네임은 뚜비입니다. 취미는 방탈출,테니스,멍때리기입니다.'
// }