hyobin
@hyobin
Students
11,313
Reviews
285
Course Rating
4.9
Mentoring Applicants
-
์๋
ํ์ธ์ ๊นํจ๋น ์
๋๋ค ๐
ํ๋ก ํธ์๋๋ฅผ ํฌ๋งํ๋ ๋ถ๋ค์ ์ํด ์ฝ๊ณ ์น์ ํ ๊ฐ์๋ฅผ ์ ๊ณตํ๊ณ ์์ต๋๋ค.
(ํ) ํ๋ก ํธ์๋ ๊ฐ๋ฐ ๊ฐ์ฌ
(์ ) ์คํํธ์ ํ๋ก ํธ์๋ ๋ฆฌ๋ ๊ฐ๋ฐ์
์น ํ์ด์ง
์จ๋ผ์ธ ๊ฐ์
๋์
์ธ๋ถํ๋
udemy, codeit, ํ์์ฌ์๋ํ๊ต ๋ฑ ํน๊ฐ ์งํ
Courses
Reviews
- One Bite Challenge Season 7 - TypeScript
- One Bite Challenge Season 7 - React.js
- (Free Live) Hanip Challenge 7th Live OT
- (Free Live) Hanip Challenge 7th Live OT
Posts
Q&A
?. ์ฐ์ฐ์๋ ์๋ฐ์คํฌ๋ฆฝํธ ์ฐ์ฐ์์ธ๊ฐ์?
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.์ต์ ๋ ์ฒด์ด๋(?.)์ TypeScript ์ ์ฉ ๊ธฐ๋ฅ์ด ์๋๋ผ, ์๋ฐ์คํฌ๋ฆฝํธ ํ์ค(ECMAScript)์ ํฌํจ๋ ๊ณต์ ์ฐ์ฐ์์ ๋๋ค. ๊ฐ์ฒด์ ํน์ ํ๋กํผํฐ๊ฐ ์กด์ฌํ์ง ์์ ๋ ์๋ฌ๋ฅผ ๋ด์ง ์๊ณ , ์์ ํ๊ฒ ์ ๊ทผํ ์ ์๊ฒ ํด์ฃผ๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ์ฐ์ฐ์๋ผ๊ณ ํ ์ ์์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 0
- 1
- 20
Q&A
JS์ ๋ ผ๋ฆฌ ์ฐ์ฐ์ &&, ||๊ฐ ๋ฆฌ์กํธ์ ์กฐ๊ฑด๋ถ ๋ ๋๋ง &&, ||์ธ๊ฐ์?
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.React.js์์ ์ฌ์ฉํ๋ ์กฐ๊ฑด๋ถ ๋ ๋๋ง์, ์๋ฐ์คํฌ๋ฆฝํธ์ ๋ ผ๋ฆฌ ์ฐ์ฐ์ ๊ทธ๋๋ก ์ฌ์ฉํ ๊ฒ์ผ๋ก,๊ฐ์์์ ๋ค๋ฃจ๋ && ์ฐ์ฐ์(AND)์ || ์ฐ์ฐ์(OR)์ ๋์ผํฉ๋๋ค.
- 0
- 2
- 21
Q&A
<div class="bookmark-item-add-btn"> ์ง๋ฌธ
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.ํด๋น ๊ฐ์ ์์์ 25์ด๋ฅผ ๋ณด์๋ฉด, ์๋ง์ผ๋ก "id ๊ฐ๋ ๋์ผํ๊ฒ ์์ฑํด์ฃผ์ธ์" ๋ผ๊ณ ๋์์์ต๋๋ค.id ๊ฐ์ ๋์ผํ๊ฒ ์์ฑํด์ฃผ์๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค.
- 0
- 2
- 20
Q&A
๋๋ค์ด๋ฏธ์ง
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค..ํด๋น ์์์ '์์ ๋ ธํธ'์์๋ ๋ง์๋๋ ธ๋ฏ์ด, unsplash์์ ์ ๊ณตํ๋ api๊ฐ ์ญ์ ๋์ด ๋ ์ด์ ์ฌ์ฉํ ์ ์๊ฒ ๋์์ต๋๋ค. ๋ฐ๋ผ์ ์ํ์๋ ์ด๋ฏธ์ง์ ์ฃผ์๋ฅผ ๋ณต์ฌํด์ ์ฌ์ฉํด์ฃผ์๋ฉด ์์ ๋ฐฐ๊ฒฝ์ผ๋ก ์ฌ์ฉํ์ค ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค. ๊ฐ์ฌํฉ๋๋ค :)
- 0
- 2
- 28
Q&A
์๋ฐ์คํฌ๋ฆฝํธ ์ง๋ฌธ
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.๋ค๋ฅธ ๊ฐ๋ฐ ์ธ์ด์ ๋ํ ์ง์์ด ์์ผ์๋ค๋ฉด, ํ ๋ฒ์ ๋๋ด๋ ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์๋ฅผ,์์ ๊ฐ๋ฐ์ด ์ฒ์์ด์๋ผ๋ฉด, ์น ํ๋ก ํธ์๋๋ฅผ ์ํ ์๋ฐ์คํฌ๋ฆฝํธ ์ฒซ ๊ฑธ์ ๊ฐ์๋ฅผ ์ถ์ฒ๋๋ฆฝ๋๋ค!๋ฐ๋๋ผ ์๋ฐ์คํฌ๋ฆฝํธ๋, ๋ค๋ฅธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ์ง ์๋ '์์'ํ ์ํ์ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ๋งํด์. React.js, Next.js๊ฐ ์๋ ์์ํ ์๋ฐ์คํฌ๋ฆฝํธ๋ฅผ ์ตํ ๋ค์, ์ธ๊ธฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ, ํ๋ ์์ํฌ๋ค์ ํ์ตํ์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค :)
- 1
- 2
- 49
Q&A
์์ ํธ์ง ๊ด๋ จ ๋ฌธ์
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.ํด๋น ์์ ํ์ธํ์ต๋๋ค. ์์์์ 5๋ถ50์ด ์ดํ์ ๋์ผํ ์์์ด ๋ฐ๋ณต๋๊ณ ์๋ ๊ฒ ๊ฐ์๋ฐ์, ๋น ๋ฅด๊ฒ ์๋ผ๋ธ ํ ์ฌ์ ๋ก๋ ๋์๋๋ฆฌ๊ฒ ์ต๋๋ค. ๊ฐ์ ์๊ฐ์ ๋ถํธ์ ๋๋ ค ์ฃ์กํฉ๋๋ค ๐๐ปโโ๏ธ
- 0
- 1
- 33
Q&A
๋๋ฌผ์จ๋ฒ๋ง๋ค๊ธฐ 1-1 api ์ค๋ฅ
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.์ด์ AWS์์ ์ด์๊ฐ ๋ฐ์ํด ๊ด๋ จ ์๋น์ค๋ค์๋ ๋ฌธ์ ๊ฐ ์๊ธด ๊ฒ์ผ๋ก ๋ณด์ด๋๋ฐ์,ํ์ฌ 10์21์ผ ์ค์ 10์๋ฅผ ๊ธฐ์ค์ผ๋ก ์๋ํด๋ณด์์๋ ์ ์ ์๋ํ๋๊ฒ ๊ฐ์ต๋๋ค! ๋ค์ ํ ๋ฒ ์๋ํด๋ณด์๊ณ ๊ทธ๋ผ์๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค๋ฉด ๋ค์ ์ง๋ฌธ ๋จ๊ฒจ์ฃผ์ธ์! ๊ฐ์ฌํฉ๋๋ค
- 0
- 2
- 35
Q&A
ํฌํธ ๊ตฌ๋ถ ๊ด๋ จ
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.๊ฐ์ ์ด๋ฐ์๋ VSCode์ ์ต์คํ ์ ์ธ Go Live๋ฅผ ์ฌ์ฉํด 3000๋ฒ ํฌํธ๋ก ์คํํ์์ผ๋,์ดํ SPA ํ๋ก์ ํธ๋ฅผ ์คํํ ๋์๋ node ์๋ฒ ์ฝ๋๋ฅผ ์ง์ ์์ฑํ์ฌ, ์คํ๊น์ง ํ๊ธฐ ๋๋ฌธ์ 5500๋ฒ ํฌํธ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค :)
- 0
- 2
- 29
Q&A
CityList๊ฐ๋ฐ-handleLoadMoreํจ์์ง๋ฌธ
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.$loadMoreButton.addEventListener('click', () => { this.handleLoadMore(); });handleLoadMore ํจ์๋, ์์ ์ฝ๋์ฒ๋ผ CityList ์ปดํฌ๋ํธ๊ฐ ๋ ๋๋ง ๋ ๋ ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ํ๋๋ '๋๋ณด๊ธฐ' ๋ฒํผ์ ๋๋ ์ ๋ ์คํ๋๋ ํจ์์ ๋๋ค.CityList.js ํ์ผ์ ํด๋น ๋ถ๋ถ์ ์์ฑํ์ จ๋์ง ํ์ธํด๋ณด์๋ฉด ์ข์ ๊ฒ ๊ฐ์ต๋๋ค! ์ ์ฒด ์ฝ๋๋ ์๋์ ๊ฐ์ต๋๋ค.//CityList.js export default function CityList({ $app, initialState, handleLoadMore }) { this.state = initialState; this.$target = document.createElement('div'); this.$target.className = 'city-list'; this.handleLoadMore = handleLoadMore; $app.appendChild(this.$target); this.template = () => { let temp = ``; if (this.state) { this.state.cities.forEach((elm) => { temp += ` (์ฌ์ง) ${elm.city}, ${elm.country} โญ๏ธ ${elm.total} `; }); temp += ``; } return temp; }; this.render = () => { this.$target.innerHTML = this.template(); if (!this.state.isEnd) { const $loadMoreButton = document.createElement('button'); $loadMoreButton.className = 'add-items-btn'; $loadMoreButton.textContent = '+ ๋๋ณด๊ธฐ'; this.$target.appendChild($loadMoreButton); $loadMoreButton.addEventListener('click', () => { this.handleLoadMore(); }); } }; this.setState = (newState) => { this.state = newState; this.render(); }; this.render(); }
- 0
- 1
- 39
Q&A
const ๊ฐ์ฒด/๋ฐฐ์ด ์ฐจ์ด
์๋ ํ์ธ์ ๐ ์ง๋ฌธ ๊ฐ์ฌํฉ๋๋ค.๋จผ์ const๋ const๋ก ์ ์ธ๋ ๋ณ์์ ๋ค๋ฅธ ๊ฐ์ ๋ค์ ํ ๋นํ๊ฒ ๋ชปํ๊ฒ ํ๋ ํค์๋์ ๋๋ค.const user = { name: "์๋ฌด๊ฐ", age: 29 }; // โ ๋ถ๊ฐ๋ฅ (์ฐธ์กฐ ์์ฒด๋ฅผ ๋ณ๊ฒฝํ๋ ค ํจ) user = { name: "ํ๊ธธ๋" }; // TypeError // โ ๋ด๋ถ ํ๋กํผํฐ๋ ๋ณ๊ฒฝ ๊ฐ๋ฅ user.age = 30; console.log(user); // { name: "์๋ฌด๊ฐ", age: 30 }๋ฐ๋ผ์ ์์ ์ฝ๋์ฒ๋ผ user๋ผ๋ ๋ณ์๋ ํ ๋ฒ ๊ฐ์ฒด๋ฅผ ๊ฐ๋ฆฌํค๋ฉด, ๊ทธ ์ฃผ์๋ฅผ ๋ฐ๊ฟ ์ ์์ง๋ง, ๊ทธ ์ฃผ์ ์์ ์ ์ฅ๋ ๊ฐ์ฒด ์์ฑ์ ์์ ์ด ๊ฐ๋ฅํฉ๋๋ค. ๋ด๋ถ์ ๊ตฌ์กฐ๋ฅผ ๋ฐ๊พธ๋๊ฑด '์ฌํ ๋น'์ ํด๋นํ์ง ์๊ธฐ ๋๋ฌธ์ ๋๋ค. const numbers = [1, 2, 3]; // โ ์์ ์์ ๊ฐ๋ฅ numbers.push(4); numbers[0] = 10; console.log(numbers); // [10, 2, 3, 4] // โ ์ฌํ ๋น ๋ถ๊ฐ๋ฅ numbers = [9, 9, 9]; // TypeError๋ฐฐ์ด๋ํ ๋ง์ฐฌ๊ฐ์ง์ธ๋ฐ์, ์์ ์ฝ๋์๊ฐ์ด ์ฌํ ๋น์ ๋ถ๊ฐ๋ฅํ์ง๋ง, ์ฌ๋ฌ ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ๋ด๋ถ์ ๊ฐ์ ๋ณ๊ฒฝํ๋ ๊ฒ์ ๊ฐ๋ฅํฉ๋๋ค.
- 0
- 2
- 37




