[JavaScript] : tirm()
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String/trim
String.prototype.trim() - JavaScript | MDN
trim() ๋ฉ์๋๋ ๋ฌธ์์ด ์ ๋์ ๊ณต๋ฐฑ์ ์ ๊ฑฐํ๊ณ ์๋ณธ ๋ฌธ์์ด์ ์์ ํ์ง ์๊ณ ์๋ก์ด ๋ฌธ์์ด์ ๋ฐํํฉ๋๋ค. ์ฌ๊ธฐ์ ๋งํ๋ ๊ณต๋ฐฑ์ด๋ ๋ชจ๋ ๊ณต๋ฐฑ๋ฌธ์(space, tab, NBSP ๋ฑ)์ ๋ชจ๋ ๊ฐํ๋ฌธ์(LF, CR ๋ฑ)๋ฅผ
developer.mozilla.org
๊ตฌํ์ํค๊ณ ์ถ์ ๊ธฐ๋ฅ
๊ฒ์๊ธ ์์ฑ์ ์ ๋ชฉ๊ณผ ๋ด์ฉ์ ์์ฑ๋ ๋ถ๋ถ์ด ์๋ค๋ฉด, ์์ธ์ฒ๋ฆฌ๋ฅผ ํ๊ณ ์ถ๋ค.
์๋ํด ๋ณธ ๊ฒ
// ์ด๊ธฐ์ฝ๋
// ์ ๋ชฉ์ ์
๋ ฅ๊ฐ์ด ์์ ๋,
if (title === ' ' || title === undefined) {
return res.status(412).json({ errorMessage: '๊ฒ์๊ธ ์ ๋ชฉ์ ํ์์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค.' });
}
// ๋ด์ฉ์ ์
๋ ฅ๊ฐ์ด ์์ ๋,
if (content === ' ' || content === undefined) {
return res.status(412).json({ errorMessage: '๊ฒ์๊ธ ๋ด์ฉ์ ํ์์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค.' });
}
์ ์ฝ๋๋ ํ๋์ ๊ณต๋ฐฑ์ ์ก์๋ด์ง๋ง 2๊ฐ ์ด์์ ๊ณต๋ฐฑ์ผ ๊ฒฝ์ฐ ์์ธ์ฒ๋ฆฌ๋ฅผ ํ์ง ๋ชปํ๋ค.
!title์ ์ฌ์ฉํ์ง ์์ ์ด์
!title์ ๋ด๊ฐ ์์ธ์ฒ๋ฆฌ๋ฅผ ์ํ๋ ๋น ๊ณต๋ฐฑ๋ค๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด๊น์ง๋ ์ก์๋ด์ง ๋ชปํ๊ธฐ ๋๋ฌธ์ ์ฌ์ฉํ์ง ์์๋ค.
console.log(Boolean(' ')); // true
function a(a, b) {
if (' ' === ' ') {
return a + b;
} else {
return 10;
}
}
let b = a(1, 2);
console.log(b); // 10
์์ ์ฝ๋์์ ๋ณด๋๊ฒ๊ณผ ๊ฐ์ด ๋น ๊ณต๋ฐฑ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ true ๊ฐ์ ๊ฐ์ง๋ค.
๊ทธ๋ ๋ค๋ ์ด์ผ๊ธฐ๋ !title๋ก๋ ์์ธ์ฒ๋ฆฌ ๋ก์ง์์ ๊ฑธ๋ฌ์ง์ง ์๋๋ค๋ ๊ฒ์ด๋ค.
๊ทธ๋ฆฌ๊ณ a๋ผ๋ ํจ์๋ฅผ ๋ณด๊ฒ๋๋ฉด, ๊ณต๋ฐฑ ํ๋์ ๊ณต๋ฐฑ 2๊ฐ๋ ์๋ก ๋ค๋ฆ์ ๋ํ๋ด๊ณ ์๋ค.
๊ทธ๋ ๊ธฐ์ ๊ณต๋ฐฑ์ ํ ๋ฒ์ ์ก์๋ด๊ธฐ ์ํด์๋ includes๋ฅผ ์ฌ์ฉํ๋ฉด ์ด๋จ๊น ์ถ์๋ค.
includes ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ฝ๋
// ์์ ์ฝ๋
// ์ ๋ชฉ์ ์
๋ ฅ๊ฐ์ด ์์ ๋,
if (!title || title.includes(" ")) {
return res.status(412).json({ errorMessage: '๊ฒ์๊ธ ์ ๋ชฉ์ ํ์์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค.' });
}
// ๋ด์ฉ์ ์
๋ ฅ๊ฐ์ด ์์ ๋,
if (!content || content.includes(" ")) {
return res.status(412).json({ errorMessage: '๊ฒ์๊ธ ๋ด์ฉ์ ํ์์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค.' });
}
๊ทธ๋์ ์ด๋ฒ์ title์ ๊ฐ์ด false์ด๊ฑฐ๋, ๋น ๊ณต๋ฐฑ์ 2๊ฐ ์ด์ ํฌํจํ๊ณ ์๋ค๋ฉด, ์์ธ์ฒ๋ฆฌ๋ฅผ ํ ์ ์๋๋ก includes ๋ฉ์๋๋ฅผ ์ฌ์ฉํด ๋ณด์๋ค.
๊ณต๋ฐฑ์ 2๊ฐ๋ถํฐ ํฌํจํ์ ์ ์์ธ์ฒ๋ฆฌ๋ฅผ ํ ์ด์ ๋, ๊ฒ์๊ธ ์ ๋ชฉ์ด๋ ๋ด์ฉ์ ๋์ด์ฐ๊ธฐ๊ฐ ์กด์ฌํ ์๋ ์๊ธฐ ๋๋ฌธ์ด๋ค.
ํ์ง๋ง ์ด ์ฝ๋๊ฐ ์ข์ ์ฝ๋์ธ์ง์ ๋ํ ์๋ฌธ์ด ๋ค์๋ค.
๊ทธ๋์ ํ์
์์๋ ์ด๋ค์์ผ๋ก ์ด ๋ถ๋ถ์ ์์ธ์ฒ๋ฆฌ๋ฅผ ํ๊ณ ์๋์ง ๋ฌผ์ด๋ณด๊ณ ๋ค์ ๋ฉ์๋๋ฅผ ์๊ฒ ๋์๋ค.
trim()
trim์ ๋ฌธ์์ด์ ์ ๋์ ์์นํ ๊ณต๋ฐฑ๋ค์ ์์ค "์๋ก์ด" ๋ฌธ์์ด์ ๋ฐํํ๋ค.
๊ทธ๋ ๋ค๋ ๊ฒ์, ์๋ฌด๋ฆฌ ๋ง์ ๊ณต๋ฐฑ์ ์ฌ์ฉํด์ ์ ๋ชฉ์ผ๋ก ์์ฑํ๋ , ์๋๋ฉด ๋ฌธ์์ด์ ์์๊ณผ ๋์ ์๋์น ์์ ๊ณต๋ฐฑ๋ค์ด ๋ค์ด๊ฐ๋๋ผ๋, trim ๋ฉ์๋๋ฅผ ์ฌ์ฉํ๋ฉด ๊ทธ ๊ณต๋ฐฑ์ ์ ์ธํ ์์ฑ ๋ด์ฉ์ ์ ๋ชฉ๊ณผ content๋ฅผ ๊ฐ์ ธ์ฌ ์ ์๋ค๋ ๋ป์ด๋ค.
// trim ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ฝ๋
// ์ ๋ชฉ์ ์
๋ ฅ๊ฐ์ด ์์ ๋,
if (!title || !title.trim()) {
return res.status(412).json({ errorMessage: '๊ฒ์๊ธ ์ ๋ชฉ์ ํ์์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค.' });
}
// ๋ด์ฉ์ ์
๋ ฅ๊ฐ์ด ์์ ๋,
if (!content || !content.trim()) {
return res.status(412).json({ errorMessage: '๊ฒ์๊ธ ๋ด์ฉ์ ํ์์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค.' });
}
๊ทธ๋ฆฌ๊ณ trim ์ ์์ชฝ์ ๊ณต๋ฐฑ์ ๋ค ์์ ๋ ๊ฒ์ด ์๋๋ผ ๋ฌธ์์ด์ ์์ ๋๋ ๋ฌธ์์ด์ ๋์ ์๋ ๊ณต๋ฐฑ๋ง ๋ฐ๋ก ์์จ ์ ์๋ ๊ธฐ๋ฅ๋ ๊ฐ์ถ๊ณ ์๋ค.
// ๋ฌธ์์ด ์์์ ๊ณต๋ฐฑ๋ค๋ง ์์ ์ฃผ๋ ๋ฉ์๋
trimStart()
// ๋ฌธ์์ด ๋์ ๊ณต๋ฐฑ๋ค๋ง ์์ ์ฃผ๋ ๋ฉ์๋
trimEnd()
์ด๋ ๊ฒ ์๋กญ๊ฒ ์๊ฒ๋ trim๊ณผ includes๋ฅผ ์๋ง๊ฒ ์ฌ์ฉํด๋ณด๋ฉด ๋ณด๋ค ๋ง์ ๊ฑธ ํํํ ์ ์์ ๊ฒ ๊ฐ๋ค !!
https://github.com/Yooonzero/7-personal-assignment-create-backend-server-lv4
GitHub - Yooonzero/7-personal-assignment-create-backend-server-lv4: lv3 ๊ฐ์ธ๊ณผ์ ์ ์ข์์ ๊ธฐ๋ฅ๊ณผ ๋๊ธ ๊ธฐ๋ฅ์ ์ถ
lv3 ๊ฐ์ธ๊ณผ์ ์ ์ข์์ ๊ธฐ๋ฅ๊ณผ ๋๊ธ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ๋ฒ์ ผ. Contribute to Yooonzero/7-personal-assignment-create-backend-server-lv4 development by creating an account on GitHub.
github.com
#์์ธ์ฒ๋ฆฌ #includes #trim #๋น๋ฌธ์์ด